Play 2.5.x'e geçmeden önce sık sık WebSocket.acceptWithActor
kullandım. Artık web girişlerimi farklı giriş ve çıkışlar kullanırken açık kalmak için alamıyorum, benim durumumda, giriş String, çıktı JsValue.OynaWithActor [String, JsValue] için Play 2.5.x eşdeğeri nedir?
Çal 2.5.x önce Alıcım:
object Application extends Controller {
def myWebSocket = WebSocket.acceptWithActor[String, JsValue] { request =>
out => MyActor.props(out)
}
Çal 2.5.x My alıcı: my aktör preStart
yılında
@Singleton
class Application @Inject() (implicit system: ActorSystem, materializer: Materializer) extends Controller {
implicit val messageFlowTransformer =
MessageFlowTransformer.jsonMessageFlowTransformer[String, JsValue]
def myWebSocket = WebSocket.accept[String, JsValue] { request =>
ActorFlow.actorRef(out => MyActor.props(out))
}
}
hemen postStop
ardından, bu yüzden denir edilir
WebSocket.accept[String, String]
kullanırsam yuva açık kalır.
Neyi yanlış yapıyorum? Bununla
ActorFlow.actorRef[String, JsValue](out =>
MyActor.props(
out,
...
)
).map(_.toString)
özel bir messageflowtransformer tanımlamak shouln't ve aktör düzeyinde yine dizeleri almak ve JsValues dönebilirsiniz:
Merhaba, bunun için bir çözüm buldunuz mu? – SergiGP
Ne yazık ki, ben 'WebSocket.accept [String, String]' –
kullanarak benim cevap bir göz atın, kirli ama belki sizin için çalışabilir :) – SergiGP