编程语言
首页 > 编程语言> > java – SSE发射器:管理超时和完成()

java – SSE发射器:管理超时和完成()

作者:互联网

我正在编写一个Web应用程序,其中多个侦听器(Evcentsource SSE客户端JS)将连接到我的服务器.我想做的是

>为每个连接的侦听器存储SSE发射器:可以通过为每个客户端分配id在内存或任何其他方式完成我到目前为止我能够实现此目的
>现在问题;如何将响应/事件发送到连接到我的Web应用程序的特定客户端?执行此操作时,存储的SSEEmmiters要么已完成,要么已超时.我该如何防止这种情况?我如何让sseEmmiter保持开放无限时间(直到客户关闭)并有选择地发送事件.

解决方法:

您需要在SseEmitter上设置超时.默认超时时间很短.

SseEmitter timeout是以毫秒为单位.这是会话超时,不受会话活动的影响.

需要将超时设置为会话的预期持续时间(以毫秒为单位).因此,86400000(或更多)是完全合适的.

标签:server-sent-events,eventemitter,java,spring
来源: https://codeday.me/bug/20190823/1702524.html