Spring中的java ServerSent事件客户端示例
我们的团队为特定任务开发了服务器发送事件(SSE)
我正在尝试构建一个客户端来侦听来自服务器的事件流。 我已经设法使用Jersey Java库实现了这一点。 然而,由于我们的大多数客户机代码都使用Spring,所以我想举一个例子来说明如何使用Spring实现这一点
我能够在Spring的服务器端找到许多关于SSE的示例。但是,我无法找到客户端的任何文档
Spring在客户端支持SSE吗? 如果是,我可以举一个例子说明如何使用Spring实现以下功能
向我们的服务器发送HTTP GET请求
获取->http://example.com/api/events/
标题->
接受:文本/事件流
sessionKey:someString
响应将是一个文本流,客户端将继续接收该文本流,直到客户端选择关闭连接
# 1 楼答案
看看SpringRESTTemplate的一个执行方法。它们都以
ResponseExtractor
作为参数。这个回调接口定义了一个方法:extractData(ClientHttpResponse response)
。通过提供您自己的ResponseExtractor,您可以对响应做您想做的事情,比如逐行阅读。天真的例子: