0

mashape API からデータを取得するのに問題があります。UNIREST POST を作成しましたが、データを自分自身にエコーバックできません。これが呼び出しで返されるはずです。

{
 "result": {
"name": "The Elder Scrolls V: Skyrim",
"score": "92",
"rlsdate": "2011-11-11",
"genre": "Role-Playing",
"rating": "M",
"platform": "PlayStation 3",
"publisher": "Bethesda Softworks",
"developer": "Bethesda Game Studios",
"url": "http://www.metacritic.com/game/playstation-3/the-elder-scrolls-v-skyrim"
}
}

そして私のコード...

require_once 'MYDIR/mashape/unirest-php/lib/Unirest.php';

$response = Unirest::post(
"https://byroredux-metacritic.p.mashape.com/find/game",
array(
 "X-Mashape-Authorization" => "MY API AUTH CODE"
),
array(
"title" => "The Elder Scrolls V: Skyrim",
"platform" => undefined
)
);

echo "$response->body->name";
?>

「名前」をエコーする方法を誰でも提案できますか。

どんな助けでも大歓迎です:)

4

1 に答える 1

2

本文を表示しようとしている方法では、プロパティplatformが である必要があることを示す応答でエラーが表示されないようnumberです。

代わりに使用json_encode($response->body)して、完全な応答を確認してください。

<?php

require_once 'lib/Unirest.php';

$response = Unirest::post(
  "https://byroredux-metacritic.p.mashape.com/find/game",

  array(
    "X-Mashape-Authorization" => "-- your authorization key goes here --"
  ),

  array(
    "title" => "The Elder Scrolls V: Skyrim",
    "platform" => 1 # try placing undefined here.
  )
);

echo json_encode($response->body);

?>

応答を取得したら、次を使用できます$response->body->result->name

$result = $response->body->result;
echo "{$result->name} has a score of [{$result->score}]";
于 2014-06-03T18:54:30.423 に答える