質問

どのように私はネッティーのフレームワークを使用したロングポーリングを行うことができますか?例えば私はhttp://localhost/waitforx

フェッチと言います

しかしwaitforxは、イベントを待つ必要があるため、非同期のですか?セイ例えばそれは、ブロッキングキューから何かを取り出す(とき、キュー内のデータのみ取り出すことができます)。キューからアイテムを取得するとき、私はクライアントに送信されたデータをバックにしたいと思います。うまくいけば、誰かがこれを行う方法を私にいくつかのヒントを与えることができます。

多くの感謝

役に立ちましたか?

解決

は、最初の応答ヘッダを書き込み、その後、他のスレッドから後本体(コンテンツ)を送信することができます。

void messageReceived(...) {
    HttpResponse res = new DefaultHttpResponse(...);
    res.setHeader(...);
    ...
    channel.write(res);
}

// In a different thread..
ChannelBuffer partialContent = ...;
channel.write(partialContent);

他のヒント

あなたはネッティー-socketio のプロジェクトを使用することができます。それは長いポーリングをサポートした Socket.IO のサーバーの実装です。ウェブ側では、あなたは Socket.IOクライアントにはJavaScriptのlibます。

を使用することができます

また、[sfnrpc]で次の操作を行うことができます: http://code.google.com/p / sfnrpcする

Object object = RPCClient.getInstance().invoke("#URN1","127.0.0.1:6878","echo",true,60,"", objArr,classArr, sl);

真の原因通信が同期されるように

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top