2011-01-18 15 views
6

JavaScript以外のクライアントでCOMETにGoogleアプリケーションエンジンChannel APIを使用する方法。GoogleアプリケーションエンジンチャンネルAPI(COMET非Javascriptクライアント)

私はPythonや他の言語でクライアントを書くつもりであり、クライアントからHTTPやSocksを実行できます。

どのように進む必要がありますか?JavaScriptクライアントを使用して何が起こっているのか知りたいですか?
JSがロングポーリングを使用しているか、GAEサーバーと何を話すか。

答えて

8

非同期メッセージの受け渡しは、ページに非表示のiframeを埋め込み、Googleクローズのjavascriptライブラリのgoog.net.CrossPageChannelクラスを使用してiframeからホストページにメッセージを送信することで行います。

閉鎖CrosspageChannelコードはここに文書化されている:http://closure-library.googlecode.com/svn/!svn/bc/4/trunk/closure/goog/docs/class_goog_net_xpc_CrossPageChannel.html

あなたは簡単にリバースエンジニアリングすることができ、ホストページにIFRAMEから渡されますメッセージを。これらはおそらく変更されません(ただし、現在のところその保証はありません)。

私は今四半期にチャネルAPIのクライアントライブラリをオープンソースにしたいと考えていますが、上記のようにすれば開始できます。

+0

ありがとうMoishe、それを待っています.... – Tiwari

+0

@Moishe Channel APIのJavascriptクライアントはClosureライブラリですか? – drecute

3

Google App EngineはChannel APIの背後にあるプロトコルに関するドキュメントをまだ公開していないため、JavaScript言語外のライブラリ(ここではGwtのラッパー)は開発されていません。あなたはこれらの機能要求を主演可能性が興味を持っている場合は


4189 - Enable Java clients (not just javascript) to use the Channel API
4226 - Channel API for native client apps?
4206 - Create a native C# client library for the Channel API

+0

には、低レベルでクライアント側の動作をリバースエンジニアリングしようとしたボディがあります。 – Tiwari

+0

でも可能ですが、Afaikの公開ドキュメントはまだありません – systempuntoout

3

あなたは非JSのクライアントからの双方向の更新をしたい場合は、XMPPを使用することができます。

4

javascript Channel APIクライアントをリバースエンジニアリングしてpython libraryを作成しました。 気軽にご利用ください。私は実際のアプリケーションでそれをまだテストしていませんが、私が見ることのできるところからはかなりうまくいくようです。

+0

ありがとうたくさんのschibum – Tiwari

関連する問題