2012-08-29 68 views
2

我正在尝试使用playframework不断地将数据从web服务器传输到浏览器。我创建从例如documentationPlayframework websocket从服务器到浏览器的实时流式传输

这里基于一个示例代码是代码段我有

public static WebSocket<String> sockHandler() { 
    return new WebSocket<String>() { 
     // called when the websocket is established 
     public void onReady(WebSocket.In<String> in, final WebSocket.Out<String> out) { 
      // register a callback for processing instream events 
      in.onMessage(new F.Callback<String>() { 
       public void invoke(String event) { 
        Logger.info(event); 
       } 
      }); 


      int i = 0; 
      while(i<20){ 
       Logger.info("Sending message "); 
       try{ 
        Thread.sleep(1000); 
       }catch (Exception e){ 
        Logger.error("Exception " ,e); 
       } 

       out.write("Sending message " + i++ + "\n"); 

      } 
     } 
    }; 
} 

在浏览器中,写入了信息不立即在每次迭代之后接收。在循环完成后,浏览器会立即收到消息。

是否有一种方法可以在每次迭代后清除流?或者是否有更好的示例/文档来将实时数据从websocket服务器传输到浏览器..?

谢谢, 拉贾。

回答

1

我强烈建议你看看this sample

它使用Websockets和Akka actors。演员系统不是很难理解,Akka documentation是一个很好的开始!

相关问题