4

サーバーにHTTPGETを送信するphpクライアントを実装しようとしています。サーバーは、戻り情報とともにJSONオブジェクトを送り返します。phpスクリプトがJSONを受け取ったら、JSONをデコードする方法を知っていますが、実際に取得するにはどうすればよいですか?


編集:注-サーバーにHTTP GETを送信すると、JSONファイルが生成されて返送されます。サーバー上にあるファイルではありません。

4

2 に答える 2

9

file_get_contentsを確認してください

$json = file_get_contents('http://somesite.com/getjson.php');
于 2012-04-18T20:03:24.823 に答える
2

ブラウザーは、サーバーの応答に基づいて異なる動作をします。サーバーに対して行うリクエストのタイプ (GET、POST など) は関係ありませんが、レスポンスとして JSON を返すには、リクエストを行うスクリプトにヘッダーを設定する必要があります。

header('Content-Type: application/json;charset=utf-8;');

次に、JSON 文字列をエコーし​​ます。次に例を示します。

//...populating your result data array here...//
// Print out the JSON formatted data
echo json_encode($myData);

ユーザー エージェントは JSON 文字列を取得します。AJAX が要求を行った場合は、次のように、その結​​果を処理可能な JavaScript オブジェクトに単純に解析できます。

//...AJAX request here...//
// Parse result to JavaScript object
var myData=JSON.parse(XMLHttp.responseText);

ヘッダー自体は - 本当に - 必要ではありませんが、一種の良い習慣です。JSON.parse() は、関係なく応答を解析できます。

于 2012-04-18T20:14:50.077 に答える