EventSource使用什么HTTP方法来打开连接?

时间:2018-01-21 23:04:52

标签: javascript eventsource

虽然在其他问题中,人们声称EventSource已经有了很好的文档记录,但我发现它在某些情况下更明显地暗示了。

我的理解是,在JS中初始化一个EventSource对象时,它会使用指定的URI打开与服务器的连接。

是否使用GET启动此连接?

(不确定这是否构成第二个问题)是否可以使用/强制使用其他HTTP方法(POST)?

1 个答案:

答案 0 :(得分:1)

使用EventSource接口时的请求方法是GET请求。您可以在传递给构造函数的URL中包含查询字符串,并在服务器上解析查询字符串。



const stream = "data: event stream\n\n";
const blob = new Blob([stream], {type:"text/event-stream"});
const blobURL = URL.createObjectURL(blob);
const es = new EventSource(blobURL);
es.onmessage = e => {
   console.log(e.data);
}
es.onerror = e => {
   es.close();
}