onmessage和addEventListener有什么不同?

时间:2013-11-21 14:35:20

标签: javascript server-sent-events

我正在尝试使用服务器发送的事件获取数据,使用

的不同之处

source.onmessage vs source.addEventListener

1 个答案:

答案 0 :(得分:8)

source.onmessageEventSource的内置函数包装器,在将新数据发送到客户端时触发。当没有 event属性被返回(默认)时,它会触发,而不会在设置时触发。

addEventListener类似,但不同之处在于它会侦听特定的event名称,并在其存在时触发,允许您将多个事件的功能分开。然后,您可以解析返回的JSON数据。它可以用于任何事件类型。看看这个例子:

source.addEventListener("login", function(e) {
    // do your login specific logic
    var returnedData = JSON.parse(e);
    console.log(returnedData);
}, false);

此代码段将侦听指定为event的{​​{1}}的服务器消息,然后触发回调函数。

  

更多信息: