我想在我的php文件中捕獲一個站點(http://gnocchi-www.buffalo-ggn.net/bingo2-v2.47.0-JACKET/js/cache/static_desktop_data.json)的響應,以將可用的集合項寫入數據庫。使用修改標題的php cURL請求
如果我在瀏覽器中輸入地址,我會得到一個json字符串作爲響應。但是如果我使用cURL請求,我會得到一個空的響應。
這裏是我的捲曲代碼:
$url = 'http://gnocchi-www.buffalo-ggn.net/bingo2-v2.47.0-JACKET/js/cache/static_desktop_data.json';
$headers = array(
"Content-Type: application/x-www-form-urlencoded",
"Host: gnocchi-www.buffalo-ggn.net",
"Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4",
"Accept-Encoding: gzip,deflate,sdch",
"Accept: */*"
);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_GET, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36");
curl_setopt($ch, CURLOPT_REFERER, "https://gs1.wac.edgecastcdn.net/805F48/gnocchi/bingo2-v2.47.0-JACKET/assets/Game.swf");
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response=curl_exec($ch);
echo $response;
,當我進入瀏覽器的URL被髮送的標題是:
主持人:gnocchi-www.buffalo-ggn.net
連接:保持活着
接受:text/html的,應用/ XHTML + xml的,應用/ XML; q = 0.9,圖像/ WEBP,/; q = 0.8
User-Agent:Mozilla/5.0(Windows NT 6.1; WOW64)爲AppleWebKit/537.36(KHTML,例如Gecko)鉻/ 32.0.1700.107 Safari瀏覽器/ 537.36
接受編碼:gzip,放氣,SDCH
接受語言:DE-DE,DE; Q = 0.8, en-US; q = 0.6,en; q = 0.4
任何人都可以幫我解決這個問題嗎?
,準確的代碼對我的作品 - 我(根據返回'內容Length'頭578604個字節)得到JSON數據的負荷。儘管你的代碼有一些警告 - 試着打開error_reporting(E_ALL);看看你是否得到了一些有用的信息。 – Nils
'CURLOPT_GET'選項不存在(http://www.php.net/manual/en/function.curl-setopt.php) – hindmost
thx尼爾斯和最後。 在我的其他服務器上,它工作正常。不太明白,但它在那裏工作。 Thx爲您提供幫助。也許我應該在那裏嘗試過。 – user3280178