【发布时间】:2012-03-02 15:03:36
【问题描述】:
我已经实现了一个简单的 appmod 来处理 WebSocket 并回显消息。但是如何处理来自 JavaScript 客户端的ws.close();?我尝试过使用下面的代码,但从未调用过 handle_message({close, Reason}) 并且从未在 JavaScript 客户端上执行过 ws.onclose = function(evt) {}。
当我使用相同的 JavaScript 客户端代码与 node.js websocket 交互时,客户端在ws.close(); 之后立即收到onclose 事件。
这是我的简单appmod的代码:
-module(mywebsocket).
-export([handle_message/1]).
handle_message({text, Message}) ->
{reply, {text, <<Message/binary>>}};
handle_message({close, Reason}) ->
io:format("User closed websocket.~n", []),
{close, normal}.
【问题讨论】: