我在Akka中实现了Websocket,客户端可以发送简单的请求并得到服务器的回复,但我想知道如何在Akka中让服务器主动向客户端发送消息?
我找到了如何做到这一点:
首先,您需要使用ActorPublisher将消息推送到客户端。
其次,您需要创建一个Flow,该Flow使用Source.actorPublisher(Props.create(yourActorPublisher.class)),然后将创建的Flow传递给handleWebSocketMessages路由。
现在,要向客户端推送消息,您只需要发布者的ActorRef,并通过yourActorRef.tell(yourMessage,ActorRef.noSender())推送消息即可。