小编典典

如何在webworker中连续发送xmlhttprequest?

ajax

我是webworker的新手,但我设法将xmlhttprequest发送到我的rest
api,并且得到了json。但我想一次又一次(循环)发送此请求,直到页面处于活动状态。我实际上想实时显示值。我想制作一个简单的Web应用程序,在其中将数据插入数据库时​​,我的Webworker应该显示该数据而不刷新页面。有没有更好的方法可以做到这一点。请帮助我。对不起,英语不好。


阅读 654

收藏
2020-07-26

共1个答案

小编典典

您可以使用EventSource从服务器获取流,直到.close()在调用Worker,或者消息传递到Worker信令Worker以调用.close()

const es = new EventSource("/path/to/server");
es.addEventListener("open", function(event) {
  console.log("event source open")
});
es.addEventListener("message", function(event) {
  // do stuff with `event.data`
  console.log(event.data);
});
es.addEventListener("error", function(event) {
  console.log("event source error", event)
});

button.addEventListener("click", function() {
  es.close();
});
2020-07-26