在 Node JS 中使用服务器发送事件未在客户端接收数据

Using Server Sent Events in NodeJS not recieving data on client-side

我有一个网页,一个网页有文字输入,我想获取信息。

在客户端我有这个:

function login() {
    webpage = document.getElementById("webpage").value;
    alert(webpage);

    source = new EventSource(
        "http://localhost:8000/register?name="+webpage, 
        {'Access-Control-Allow-Origin' :'*'}
    );

    source.onmessage = function(event) {
        var a = event.data;
        alert(a);
    };
}

在服务器中我有这个:

response.writeHead(200, {
    'Content-Type' : 'text/event-stream; charset=utf-8',
    'Cache-Control' : 'no-cache',
    'Connection' : 'keep-alive',
    'Access-Control-Allow-Origin': '*'
});

但是,我正在尝试获取 aalert(a) 什么都不做。知道这段代码有什么问题吗?或者如何让它发挥作用?也欢迎在 jQuery 中提出建议。

看来你实际上并没有从服务器发送任何数据,只是设置 headers 并没有太大作用。

您还需要实际发送 events/data

res.write('event:data\n')

您正在使用 Server Sent Events with NodeJS (something you may have been unaware of at the time of asking) so search around how to use it. Here's a good start