对于问题1(强制断开与客户端的连接),这应该是可行的 val flow: Flow[Message, Message, (Future[Done], Promise[Option[Message])] = Flow.fromSinkAndSourceMat( printSink, Source.maybe )(Keep.both)val (upgradeResponse, (closed, disconnect)) = Http().singleWebsocketRequest(WebSocketRequest("ws://localhost/ws"), flow) disconnect然后可以用None来断开连接: disconnect.success(None) 对于问题2,我的直觉是,这种动态流操作似乎需要一个自定义流操作符(即,一个级别低于图形DSL,两个级别低于“normal”scaladsl/javadsl)。老实说,我在那里没有太多的直接经验。