【发布时间】:2018-06-19 16:23:56
【问题描述】:
我们使用 Akka HTTP 来处理使用 akka 流 API 的 Web 套接字连接。我们正在使用将传入消息通过管道传输到“连接参与者”的 Flow。一个sn-p的代码如下:
val connection = system.actorOf(ConnectionActor.props())
val in = Flow[Message]
.to(Sink.actorRef[Message](connection, WebSocketClosed))
val out = Source
.actorRef[Message](500, OverflowStrategy.fail)
.mapMaterializedValue(ws => connection ! WebSocketOpened(ws))
Flow.fromSinkAndSource(in, out)
当 web 套接字关闭时,连接参与者会收到“WebSocketClose”消息,我们会清理内部资源。我们现在需要知道根据标准WebSocket CloseEvent codes 关闭连接的原因是什么。
有没有办法从 Akka HTTP 获取关闭代码并将其发送到连接参与者,以便它可以采取适当的行动?
【问题讨论】:
标签: scala akka akka-stream akka-http