さて、ポスト リクエストを使用して C++ から PHP ページにいくつかのものを送信する必要があるゲームを手に入れました。
私の質問は次のとおり
です。投稿リクエストを送信するにはどうすればよいですか? PHP にはどのようなデータを送信できますか? (文字列と整数だけですか、それともコレクション全体ですか?)
投稿リクエストを送信するにはどうすればよいですか?
これは通常、HTTP ライブラリを使用して行われます。私自身は C++ で使用したことはありませんが、cURL はさまざまなプラットフォームで人気があり、[C++ バインディング][1] があります (ただし、ドキュメントは現在移行中のようです)。
この質問には、件名に関する詳細情報があります。
PHP にはどのようなデータを送信できますか?
好きなデータのほとんど - ただし、データ構造ではなくデータ形式である必要があります。コレクションを送信する場合は、何らかの形式にシリアル化する必要があります。JSON は人気のあるものです。バイナリ データは、base64 を使用してエンコードできます。
JSON を使用する場合は、エンコードの 2 番目のレイヤーを追加してそれを送信しapplication/x-www-form-urlencoded
、生の JSON にアクセスする$_POST
か、JSON を POST リクエストの本文全体にして 、PHPで投稿の本文を取得することができます。
データの送信にはJSONまたはSOAPを使用できます。少量のデータを渡す場合は、JSONが推奨されます。JSON/SOAPに関する詳細情報
HTTPリクエストを作成するには、 libcurlと最終的にはそのc++ラッパーcurlppの使用を検討してください
phpに送信したいものは何でも送信できますが、HTTPから送信されるすべてのデータがphpの文字列になることを忘れないでください。intval()
PHPは、int with orなどの型にキャストできます(int)
が、バイナリデータの処理はより複雑になります。
堅牢な通信を構築するために、jsonやRESTなどの標準を使用することを検討してください。
POST リクエスト経由で送信しているという事実は、HTTP サーバーを使用して PHP スクリプトを提供していることを示しています。その場合、HTTP リクエストを送信できるライブラリが必要です。非常に一般的な選択肢はlibcURLです。あなたは何を送ることができますか?HTTP リクエストで送信できるものは何でも送信できます。だから何でも好き。