Javascript 无法使用基本设置解决服务器发送的事件问题

Javascript 无法使用基本设置解决服务器发送的事件问题,javascript,php,server-sent-events,Javascript,Php,Server Sent Events,我有一个在某处查询API的PHP脚本。问题在于,数据无法通过JavaScript传输。我在施维雅侧脚本的开头添加了以下标题: header('Content-Type: text/event-stream'); header('Cache-Control: no-cache'); 在javascript方面,为了调试目的,我添加了以下代码 if (!!window.EventSource || window.EventSource !== undefined) { var stream =

我有一个在某处查询API的PHP脚本。问题在于,数据无法通过JavaScript传输。我在施维雅侧脚本的开头添加了以下标题:

header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');
在javascript方面,为了调试目的,我添加了以下代码

if (!!window.EventSource || window.EventSource !== undefined) {
  var stream = new EventSource('/path/to/event/source.php');

  console.log("Everything looks good.");
}else{
  console.log("Your browser does not support Server-sent events! Please upgrade it!");
}
然后在流侦听器中,我添加了以下内容:

stream.addEventListener('my_event', function(event){
  if(event.origin != 'example.com'){
     console.log('We have a CORRS problem');

     return;
   }
});
上面检查的目的是查看在服务器和客户端上运行的域url是否与预期相同

我添加的最后一点调试是在流上注册错误侦听器,以捕获可能隐藏在流对象本身后面的任何错误

stream.addEventListener('error', function(event){
   if(event.readyState == EventSource.CLOSED){
       console.log("Connection has an error.");
    }
}, false);
尽管如此,我仍然在Firefox和Chrome上遇到一个错误,如下所示:

打开页面时,与example.com的连接中断 装载

然后是第二个,如下所示:

Firefox无法在上建立与服务器的连接 example.com/path/to/event/source.php


我认为这个问题与代码无关,而与其他一切有关,但我对这项技术没有具体的知识。任何对我如何解决这个问题有想法的人,请提供帮助。

试试HTML和PHP代码:如果有帮助的话。只要阅读文章。。。。PHP端的系统事件使用Packageists库“igorw/event source”:“dev master”,从您引用的文章中,我看到了输出缓冲的使用。问题:假设我们没有使用任何库来处理这个问题,那么是否有必要使用它?