/ / Akka-Http WebSocket: потік Akka використовує WebSocket як мийка - scala, websocket, akka, akka-stream, akka-http

Akka-Http WebSocket: Akka stream використовує WebSocket як раковину - scala, websocket, akka, akka-stream, akka-http

Використання Akka-Http і Akka-Streams версії 2.4, як я можу побудувати потік так, що він має раковину, яка є websocket.

Наприклад, я хотів би мати джерело, що генерує випадкові числа, ці цифри фільтруються, скажімо, тримайте парні числа, потім переходимо до WebSocket як раковину.

Дякую

Відповіді:

3 для відповіді № 1

Цей код, введений у маршрут http http, буде виводити безперервний потік випадкових чисел без перевантаження веб-розетки

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))
}
}