JSON 文字列がサーバーに送信されるときの TCP サーバーとクライアントの関係の性質を完全に理解するのに苦労しています。必要な情報はそこにあるかもしれませんが、探している正しい検索パラメーターを使用していない可能性があります。
次の例から、Python TCP、JSON-RPC サーバーを構築しました。
- https://github.com/joshmarshall/jsonrpclib
- http://code.activestate.com/recipes/552751-json-rpc-server-and-client/
どちらの場合も、別のコンピューターの Python コンソールから Python サーバーと通信し、一方 (クライアント) から他方 (サーバー) にコマンドを送信できます。すべての例で、TCP 通信を容易にするために、クライアント マシンとサーバー マシンの両方に上記のライブラリをインストールする必要がありました。
私の状況と質問の背景は、いつ JSON がミックスに入るのですか? これは私がやりたいことです:
ネットワークの内部 (または外部) のリモート クライアントから JSON 文字列を受け入れる Python TCP サーバーをセットアップします。サーバーは JSON 文字列を解析し、オブジェクト化された文字列からメソッドとパラメーターを取得して、メソッドを実行します。次に、サーバーは JSON 文字列の結果を呼び出し元のクライアントに送信します。この場合、クライアントは、サーバーに要求を送信するために使用する JavaScript ライブラリを備えたモバイル アプリケーション (iPad、Android など) です。
なぜ Python クライアントが必要なのですか? 私が収集できることから、クライアントはサーバーへの接続を開き、JSON 文字列を送信するだけで済みますよね? すべてのコード サンプルに Python クライアントの例が含まれているのはなぜですか? 彼らは、サーバー マシンがサーバー マシンと通信することを想定しているので、サーバーに送信される JSON 文字列を生成するのに役立つクライアント コードを含めているのでしょうか?
Python クライアントが実際には必要ないと仮定すると、JSON 文字列を iPad から Python サーバーに送信していましたが、いずれの場合もサーバーは「Bad request syntax」エラーを報告しています。現在の質問を正しく理解していれば、その問題について新しい質問を書きます。
洞察力は高く評価されます。