WebSocket最佳实践

时间:2014-02-01 09:00:47

标签: javascript websocket

我正在玩Websockets而且我已经以很少的socket.on(msg,function())事件结束了。所以我想知道什么是最佳实践,只需为每个案例添加socket.on事件,或者只使用一个事件来处理将在

中处理的子事件
switch(json.type) {
       case 'maps' : add_maps_from_json(json);
                    break; 
       case 'fList': show_floor_list(json); 
                    break; 
       ...
       case 'xxx':

2 个答案:

答案 0 :(得分:3)

由于触发了一个'onmessage'事件,因此为此设置一个处理程序似乎最干净。否则事情会很快变得混乱,因为没有中心位置,一旦事件发生,会发生什么事情。

此外,对于众多处理程序,可能需要在每条消息上调用所有代码。对于许多用例来说,这可能是不重要的,但是对于高消息频率和/或时间关键处理,具有单一功能似乎是更有效的解决方案。

在整体上,单个处理函数是Mozilla在其WebSocket tutorial

中的功能

答案 1 :(得分:1)

这两种方法都可行 但是,如果您使用一个事件,则可以对该消息执行一些常见的预处理或后处理。在单独的socket.on事件中执行此操作会强制您复制代码(即使预处理/后处理是在单独的方法中完成的)。 所以,我会选择一种socket.on方法。