【发布时间】:2018-11-26 17:36:07
【问题描述】:
我正在尝试使用 Play Framework 2.6 执行以下操作:
- 浏览器以服务器为目标并创建了一个 websocket
- 稍后(在执行一些其他请求之后),服务器通过先前创建的 websocket 向浏览器发送消息
1) 可以通过路线轻松完成:
public WebSocket socket() {
return WebSocket.Text.accept(request -> {
// Log events to the console
Sink<String, ?> in = Sink.foreach(System.out::println);
// Send a single 'Hello!' message and then leave the socket open
Source<String, ?> out = Source.single("Hello!").concat(Source.maybe());
return Flow.fromSinkAndSource(in, out);
});
}
并且websocket可以保存在服务器端。
2) 但是我怎样才能通过 websocket 发送数据呢? (触发服务器端)
这在 2.5 中很容易做到,但文档对玩 2.6 帮助不大。
谢谢
【问题讨论】: