在PHP中它非常简单: 我刚把它添加到“b.php”:
header('Content-Type: text/event-stream');
echo "data: Hi\n\n";
flush();
这是“a.html”:
var source = new EventSource("b.php");
source.onmessage = function (event) {
document.body.innerHTML += event.data + "<br>";
我只需要去a.html它就可以了!
但在java中我试图创建servlet,在doGet中我添加了这段代码:
response.setContentType("text/event-stream");
PrintWriter out = response.getWriter();
out.println("data: Hi\n\n") ;
out.flush();
当我转到a.html(与上面相同)时,我可以看到确实调用了doGet(在调试器中)但是“onmessage”事件从未发生过。
如何在JEE6中使用SSE?有人可以给我写一个有效的例子吗?
感谢。
答案 0 :(得分:1)
结帐https://github.com/oliverwehrens/Server-Sent-Events-Java-Magazin。这是一个让你前进的示例代码。