【问题标题】:PHP cURL JSON eBay API requestPHP cURL JSON eBay API 请求
【发布时间】:2012-09-08 18:18:20
【问题描述】:

我正在尝试使用 PHP 和 cURL 调用 eBay 的购物 API,并以 JSON 格式返回响应。当我将 URL 直接放在浏览器中时它可以工作,但它不在 PHP 中。我不想使用 XML。 JSON更容易。有什么建议么?

$Url ="http://open.api.ebay.com/shopping?callname=GetMultipleItems&responseencoding=JSON&appid=MyAppId&siteid=0&version=525&ItemID=290585620456,290683575886&IncludeSelector=Details,ShippingCosts,Variations";

//check if you have curl loaded
if(!function_exists("curl_init")) die("cURL extension is not installed");

$ch=curl_init($Url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$r=curl_exec($ch);
curl_close($ch);

var_dump($r);

【问题讨论】:

  • 什么不起作用?你没有得到任何数据吗?错误的数据?空白页?
  • 您的代码为我显示string(285) "{"Timestamp":"2012-09-08T18:21:45.632Z","Ack":"Failure","Errors":[{"ShortMessage":"Application ID invalid.","LongMessage":"Application ID invalid.","ErrorCode":"1.20","SeverityCode":"Error","ErrorClassification":"RequestError"}],"Build":"E789_CORE_BUNDLED_15285085_R1","Version":"789"}"。这看起来像 json :o
  • 嗯……这很奇怪。现在可以了。我不敢相信我为此花了一个小时。无论如何,谢谢!

标签: php json curl ebay-api


【解决方案1】:

你应该使用

   json_encode($response_string);

这会将响应字符串解析为 json 对象。

如果你想要基本数组而不是 json 对象,那么使用

json_decode($responce_str, true);

这将返回一个关联数组。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-15
    • 1970-01-01
    • 2021-02-21
    • 1970-01-01
    • 2017-05-25
    相关资源
    最近更新 更多