我正在尝试通过服务器发送的事件获取数据,使用方式有何不同
source.onmessage
vs source.addEventListener
?
最佳答案
source.onmessage
是 EventSource
的内置函数包装器,在将新数据发送到客户端时触发。当返回no event
属性(默认)时触发,设置时不触发。
addEventListener
类似,但不同之处在于它监听特定的 event
名称,并在其出现时触发,允许您为多个事件分离您的功能。然后,您可以解析返回的 JSON 数据。它可以用于任何事件类型。看看这个例子:
source.addEventListener("login", function(e) {
// do your login specific logic
var returnedData = JSON.parse(e);
console.log(returnedData);
}, false);
此代码段将监听服务器消息,其中 event
指定为 login
,然后触发回调函数。
More info:
关于javascript - `onmessage` 和 `.addEventListener` 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20123762/