0
:アッカ:私はこのメッセージのシーケンスを持っている私の俳優でpipetoの自己と親
var sndr: ActorRef = _
override def receive: Receive = {
case msg @ Message =>
sndr = sender
HttpRequest.singleRequest(...) pipeTo self
case smt @ HttpResponse(StatusCodes.OK, _, entity1, _) => sndr ! SomethingElse(smt)
}
私は変数の元の「差出人」を保存しています。これは、元の送信者に最終メッセージを送信する最善の方法ですか(Something
メッセージの場合はself
となります)。
すべての読者に:「forward」は、元の送信者が 'pipeTo'ステップですでに失われているため、' forward'という言葉は間違っています。 –
これは公式の文書です:http://doc.akka.io/docs/akka/2.4/scala/http/client-side/request-level.htmlそして 'pipeTo'それは' Future'それ自体です。しかし、それは自分自身で定義された先物インサイダーの俳優を使って悪い習慣とみなされます。それは一種のcatchです22 – Randomize