【发布时间】:2015-11-24 05:27:22
【问题描述】:
我正在尝试从 Spotify API 获取信息。在我的浏览器中访问此 URL 时,一切正常; https://api.spotify.com/v1/search?q=Led%20Zeppelin%20Kashmir&type=track
但是,然后我使用此代码尝试获取我刚刚获得白页的数据。我用谷歌搜索过 Stackoverflow,但仍然没有雪茄。有谁知道为什么这段代码不起作用?
感谢您对此的任何帮助。
$artist = 'Led Zeppelin';
$title = 'Kashmir';
$spotifyURL = 'https://api.spotify.com/v1/search?q='.$artist.'%20'.$title.'&type=track';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $spotifyURL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:x.x.x) Gecko/20041107 Firefox/x.x");
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$json = curl_exec($ch);
$json = json_decode($json);
curl_close($ch);
echo '<pre>'.print_r($json, true).'</pre>';
【问题讨论】:
-
开启 PHP 错误?
-
PHP 错误已启用。不返回任何错误。
-
检查页面是否重定向,如果是,curl中有一个选项来跟踪重定向。
-
artist和$title需要在 URL 中进行 urlencoded。在这种情况下,问题是Led Zeppelin中的空格。