Akka-Http WebSocket:Akka 流使用 WebSocket 作为接收器
Akka-Http WebSocket: Akka stream use WebSocket as a sink
使用 Akka-Http 和 Akka-Streams 2.4 版,我如何构建一个流,使其具有一个 websocket 接收器。
例如,我想要一个生成随机数的源,这些数字被过滤,假设保留偶数,然后作为接收器流向 WebSocket。
谢谢
此代码放入 akka http 路由将输出连续的随机数流,而不会压倒 websocket
path("randomNums") {
val src =
Source.fromIterator(() => Iterator.continually(ThreadLocalRandom.current.nextInt()))
.filter(i => i > 0 && i % 2 == 0).map(i => TextMessage(i.toString))
extractUpgradeToWebsocket { upgrade =>
complete(upgrade.handleMessagesWithSinkSource(Sink.ignore, src))
}
}
使用 Akka-Http 和 Akka-Streams 2.4 版,我如何构建一个流,使其具有一个 websocket 接收器。
例如,我想要一个生成随机数的源,这些数字被过滤,假设保留偶数,然后作为接收器流向 WebSocket。
谢谢
此代码放入 akka http 路由将输出连续的随机数流,而不会压倒 websocket
path("randomNums") {
val src =
Source.fromIterator(() => Iterator.continually(ThreadLocalRandom.current.nextInt()))
.filter(i => i > 0 && i % 2 == 0).map(i => TextMessage(i.toString))
extractUpgradeToWebsocket { upgrade =>
complete(upgrade.handleMessagesWithSinkSource(Sink.ignore, src))
}
}