未命中服务器发送的事件侦听器

Server Sent Events Listeners not being hit?

本文关键字:事件 侦听器 服务器      更新时间:2023-09-26

我刚开始使用SSE,并且在某种程度上实现了它。我可以向服务器发出http请求,但我得到的每一个响应都会返回到onmessage函数。我似乎不明白为什么我的定制听众没有受到欢迎。我有一个"ping"的监听器和一个"pong"的监听器。在我的python脚本中,我设置了两个事件。。。一个代表"乒",另一个则代表"pong"。我错过了什么?

    print "Content-Type: text/event-stream"             
    print "Cache-Control: no-control"                   
    while True:                                             
            print "event: ping'n"                       
            print "id: " + str(randint(0,9))            
            print "data: Hello World!'n"                
            print "'n'n"                                                            
            sys.stdout.flush()

source.onopen = function() {
        alert("On open");
};
source.addEventListener("ping", function(e)
{
        alert("On ping");
}, false);
source.addEventListener("pong", function(e)
{
        alert("On pong");
}, false);
source.onmessage = function(event)
{
        alert("On message");
};

我检查了响应标头,其中包含事件:ping。不确定事件侦听器为什么没有接收到它?

我终于弄明白了,无论如何谢谢你。从print "event: ping'n"中删除后,问题就解决了。