javascript - `onmessage` 和 `.addEventListener` 有什么区别?

标签 javascript server-sent-events

我正在尝试通过服务器发送的事件获取数据,使用方式有何不同

source.onmessage vs source.addEventListener?

最佳答案

source.onmessageEventSource 的内置函数包装器,在将新数据发送到客户端时触发。当返回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/

相关文章:

python - 使用 Python、Twisted 和 Flask 的服务器发送事件 : is this a correct approach for sleeping?

JavaScript、PHP - 对多个唯一用户使用服务器发送的事件?

javascript - 如何在 NodeJS 中公开 TypeScript 模块?

javascript - 使用 evaluateJavaScript 从 WKWebView 获取标题

javascript - 如何实现 HTML5 DoubleClick ClickTag?

javascript - 参数分隔符的正则表达式帮助

javascript - 使用 URL 模式对 native 重定向使用react

sinatra - 使用 Sinatra Server Sent Events 流时如何提高并发性

javascript - 将服务器发送的事件实现到英特尔 XDK 中

http - Common Lisp 中的 SSE 服务器