在我的 mochiweb 应用程序中,我使用了一个长期持有的 HTTP 请求。我想检测与用户的连接何时消失,我想出了如何做到这一点:
Socket = Req:get(socket),
inet:setopts(Socket, [{active, once}]),
receive
{tcp_closed, Socket} ->
% handle clean up
Data ->
% do something
end.
这适用于:用户关闭他的选项卡/浏览器或刷新页面。但是,当互联网连接突然中断(比如wifi信号突然丢失),或者浏览器异常崩溃时,我无法检测到tcp关闭。
我错过了什么,还是有其他方法可以实现这一目标?