我有一个Restful服务,用户可以在其中获得新的SSE广播。代码如下:

SseBroadcaster sseBroadcaster = new SseBroadcaster();

@GET
@Produces(SseFeature.SERVER_SENT_EVENTS)
@Path("/getEvent")
public EventOutput getSseOutput(@Context HttpServletResponse response) {

EventOutput eventOutput = new EventOutput();
sseBroadcaster.add(eventOutput);

return eventOutput;
}


我想做的是将新的EventOutput添加到广播公司后,向该EventOutput发送欢迎消息。但是,已经在收听广播的所有人都将收到此消息。有人知道将事件发送到特定EventOutput的方法吗?

最佳答案

您调用eventOutput.write(event);,其中eventOutboundEvent的对象。

制作OutboundEvent似乎需要相当繁琐的builder类。请参阅文档中的the example。我相信这是发送欢迎消息的最低代码:

final OutboundEvent.Builder eventBuilder = new OutboundEvent.Builder();
eventBuilder.data(String.class, "Welcome!");
final OutboundEvent event = eventBuilder.build();
eventOutput.write(event);

09-26 04:03