JavaScript以外のクライアントでCOMET用のGoogleAppEngineチャネルAPIを使用する方法。
私はPythonまたは他の言語でクライアントを作成し、クライアントからHTTPまたはSocksを実行できます。
JavaScriptクライアントの支援を受けて何が起こっているのか知りたいのですが、どうすればよいですか?
JSはロングポーリングを使用していますか、それともGAEサーバーと何を話しますか。
JavaScript以外のクライアントでCOMET用のGoogleAppEngineチャネルAPIを使用する方法。
私はPythonまたは他の言語でクライアントを作成し、クライアントからHTTPまたはSocksを実行できます。
JavaScriptクライアントの支援を受けて何が起こっているのか知りたいのですが、どうすればよいですか?
JSはロングポーリングを使用していますか、それともGAEサーバーと何を話しますか。
非同期メッセージパッシングは、ページに非表示のiframeを埋め込み、Google Closure javascriptライブラリのgoog.net.CrossPageChannelクラスを使用して、iframeからホストページにメッセージを送信することで実行されます。
Closure CrosspageChannelコードは、次の場所に記載されています:http ://closure-library.googlecode.com/svn/!svn/bc/4/trunk/closure/goog/docs/class_goog_net_xpc_CrossPageChannel.html
iframeからホストページに渡されるメッセージを簡単にリバースエンジニアリングできます。これらはおそらく変更されません(ただし、現時点で絶対的な保証はありません)。
今四半期にChannelAPIのクライアントライブラリをオープンソース化したいと思っていますが、上記の方法で始めることができます。
javascript Channel APIクライアントをリバースエンジニアリングし、Pythonライブラリを作成しました。お気軽にご利用ください。私はまだ実際のアプリケーションでテストしていませんが、私が見ることができることから、それは非常にうまく機能しているようです。
Google App Engineは、Channel APIの背後にあるプロトコルに関するドキュメントをまだ公開していないため、Javascript言語(ここではGwtのラッパー)以外のライブラリの開発はありません。
興味がある場合は、次の機能リクエストにスターを付けることができます
。4189-Javaクライアント(javascriptだけでなく)がチャネルAPIを使用できるようにします
。4226-ネイティブクライアントアプリのチャネルAPI?
4206-チャネルAPIのネイティブC#クライアントライブラリを作成します
非JSクライアントからの双方向更新が必要な場合は、XMPPを使用できます。
かっこいい、... Google I/Oのアプリエンジントークで「チャネルAPI」のX線ビューを見つけました http://www.youtube.com/watch?v=oMXe-xK0BWA
非表示のIframeを使用します http://en.wikipedia.org/wiki/Comet_(programming)#Hidden_ iframe
今、私はPythonか何かでthクライアントを模倣しようとします。