我正在使用Play 2.3,正在查看使用Akka作为WebSocket服务器的文档。但是在文档中,他们没有指出Play是否可以连接到现有的WebSocket服务器。基本上我有兴趣成为一个WebSocket客户端,它将从WebSocket服务器接收消息。我的Play应用程序将使用此WebSocket服务器进行双向请求/响应,然后最终我将启动终止。
Play with Akka可以实现吗?
答案 0 :(得分:4)
不是这样。目前它只充当服务器。
您可以使用来自Play本身的jetty websocket客户端,然后根据需要处理数据。
答案 1 :(得分:0)
结帐http://backchatio.github.io/hookup/
import io.backchat.hookup._
new DefaultHookupClient(HookupClientConfig(new URI("ws://localhost:8080/thesocket"))) {
def receive = {
case Disconnected(_) ⇒
println("The websocket to " + uri.toASCIIString + " disconnected.")
case TextMessage(message) ⇒ {
println("RECV: " + message)
send("ECHO: " + message)
}
}
connect() onSuccess {
case Success ⇒
println("The websocket is connected to:"+this.uri.toASCIIString+".")
system.scheduler.schedule(0 seconds, 1 second) {
send("message " + messageCounter.incrementAndGet().toString)
}
case _ ⇒
}
}