在chrome中使用EventSource时如何获取状态码?

DH.*_*H.J 8 javascript http server-sent-events

我尝试过EventSource在 Google Chrome 中使用本机。如果服务器响应错误,有关此响应的详细信息将显示在 Chrome 检查的响应标头中:

错误详情

但似乎无法从error参数中获取响应状态码。既不使用回调函数onerror,也不使用侦听器处理程序 ( source.addEventListener('error',function (error){}))。

    let source = new EventSource('http://127.0.0.1:7071/sse?access_token=xxxxxxx')
    source.onerror = function (error) {
        console.log(error)
    };

    source.onmessage = function (event) {
        console.log('Unknown event with message :' + event.data)
    };

    source.addEventListener('log',function (event) {
        console.log('log event with message :' + event.data)
    });

    source.addEventListener('error',function (error) {
        console.log(error)
    })
Run Code Online (Sandbox Code Playgroud)

那么,还有其他方法可以在代码中获取响应详细信息吗?任何帮助将不胜感激。

小智 -3

目前还不行,但你可以设置一个错误处理程序,如下所示:

source.onerror = function(err) {
  console.error("EventSource failed:", err);
};
Run Code Online (Sandbox Code Playgroud)

请参阅https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events