2013-07-27 2 views
1

Использование Chrome для проверки URL: http://www.wizards.com/Magic/PlaneswalkerPoints/76954206# Я могу увидеть URL, где данные JSON хватают из:Использование Curl для чтения данных в формате JSON

Запрос URL: http://www.wizards.com/Magic/PlaneswalkerPoints/JavaScript/GetPointsSummary/76954206

Запуск мой код:

$user_agent = 'Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72 Safari/537.36'; 
curl_setopt($ch, CURLOPT_USERAGENT, $user_agent); 
curl_setopt($ch, CURLOPT_URL,$url); 
curl_setopt($ch, CURLOPT_FAILONERROR, 1); // Fail on errors 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // allow redirects 
curl_setopt($ch, CURLOPT_TIMEOUT, 5); // times out after 5s 
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json','Content-Length: ' . strlen($json))); 
curl_setopt($ch, CURLOPT_POST, 1); 

// receive server response ... 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 

$server_output = curl_exec ($ch); 

curl_close ($ch); 

// further processing .... 
if ($server_output == "OK") { 
    print_r($ch); 
} else { 
    echo "Boo"; 
} 

Оставляет меня пустой страницей. Он не возвращает JSON, а только страницу с ошибкой перенаправления.

Есть ли определенный вызов, который мне не хватает, чтобы получить данные JSON?

ответ

2

Попробуйте это:

<?php 

$url = 'http://www.wizards.com/Magic/PlaneswalkerPoints/JavaScript/GetPointsSummary/76954206'; 

$ch = curl_init(); 
curl_setopt($ch,CURLOPT_URL, $url); 
curl_setopt($ch,CURLOPT_POST, 0); 
curl_setopt($ch,CURLOPT_POSTFIELDS, ''); 
$result = curl_exec($ch); 
curl_close($ch); 

echo $result; 

Выход:

{ "Результат": правда, "SessionExpired" ложь "Data": [{ "Key": "LifetimePoints",» Значение ": 6016," ReplaceElement ...

+0

Спасибо. Идк, почему я пытался усложнить все это. – PaulELI

Смежные вопросы