JavaSpring事件发射器停止在新连接上向以前的客户端发送事件
我是新来的。我有一个事件发射器,它每2秒钟发送一次更新(使用托管在Tomcat上的SseEmitter
)
当我在新窗口中打开URL时,我看到消息没有发送到以前的窗口。请看下图。
这是服务器发送事件的预期行为吗?我需要向连接到我的流式URL的所有客户端发送更新。
我的应用程序或tomcat服务器是否需要其他配置或设置?请帮忙
这是控制器
@Controller
public class MySSEController {
private final SseEmitter sseEmitter = new SseEmitter(100000l);
private int counter = 0;
@RequestMapping("/ssestream")
public SseEmitter getRealTimeMessageAction() throws IOException {
sseEmitter.send("MessageCounter : " + counter);
return sseEmitter;
}
@Scheduled(fixedDelay = 2*1000)
public void scheduledMsgEmitter() throws IOException
{
if(null != sseEmitter) {
sseEmitter.send("MessageCounter : " + ++counter);
}
}
}
# 1 楼答案
试试这个: