playframework を使用して、Web サーバーからブラウザにデータを継続的にストリーミングしようとしています。サンプルドキュメントに基づいてサンプルコードを作成しました
ここに私が持っているコードのスニペットがあります
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");
}
}
};
}
ブラウザーでは、out に書き込まれたメッセージは、各反復の直後には受信されません。while ループが完了すると、ブラウザでメッセージが一斉に受信されます。
各反復後にストリームをフラッシュする方法はありますか..? または、websocket サーバーからブラウザーにライブ データをストリーミングするためのより良い例/ドキュメントはありますか?
ありがとう、ラジャ。