19

iPhone アプリとサーバー間の永続的な接続にRatchet ( http://socketo.me )を使用したいと考えています。そして、アプリとサーバーの間でデータを交換する必要があります。

この例 ( http://socketo.me/docs/hello-world ) から、アプリがサーバーにメッセージを送信し、サーバーが応答を送信できるときに呼び出される関数onMessageがあることがわかりました アプリ。

ただし、サーバーには、アプリからデータを取得せずにアプリにデータを送信する機能も必要です。たとえば、アプリとサーバー間の接続が確立されています。サーバーで何かが発生したため、アプリに新しいデータを送信する必要があります。どうすればそれを行うことができますか?それは可能ですか?

主な質問は、サーバーからアプリにデータを送信するにはどうすればよいですか?

助けてくれてありがとう。

4

3 に答える 3

13

それは確かに可能です。何らかの方法で WebSocket サーバー プロセスと通信する必要があります。これは、RPC であれメッセージ キューであれ、なんらかの形式のメッセージ パッシングを使用して行うことができます。

Ratchet 自体は、React イベント ループに基づいています。つまり、Ratchet とのあらゆる形式の通信は、そのイベント ループと統合する必要があります。React のホームページでは、既に存在する統合のいくつかを見ることができます。

Ratchet のドキュメントには、React/ZMQ を使用して任意の場所から WebSocket サーバーにメッセージをプッシュする方法に関するチュートリアルがあります。

于 2012-10-13T16:57:02.067 に答える
7

Ratchetは、PubSubを含むWAMPも実装しています。したがって、クライアントはいくつかのトピックをサブスクライブでき、他のクライアント(つまり、バックエンドインフラストラクチャで実行されている)にそれらのトピックを公開させることができます。つまり、AutobahnPythonベースのクライアントをRatchet経由でAutobahnAndroidベースのモバイルアプリまたはAutobahnJSベースのHTML5クライアントに公開することができます。

于 2012-10-13T17:21:09.367 に答える