2015-01-12 1 views
1

Я создал новое приложение с использованием API Yahoo. Как передать необходимые заголовки с использованием функций CURL? Я получил сообщение об ошибке, когда я попытался:Передача маркера OAuth API Yahoo

<yahoo:error xml:lang="en-US"><yahoo:description>Please provide valid credentials. OAuth oauth_problem="unable_to_determine_oauth_type", realm="yahooapis.com"</yahoo:description></yahoo:error> 

Как я могу передать необходимые заголовки в этом коде:

$url ="http://fantasysports.yahooapis.com/fantasy/v2/team/223.l.431.t.1"; 
$ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  
curl_setopt($ch, CURLOPT_URL, $url); 
//get the url contents 
$data = curl_exec($ch);  
//execute curl request curl_close($ch); 
$xml = simplexml_load_string($data);  
print_r($xml);  
exit;   
+0

Пожалуйста, введите код – samgak

+0

Как мы можем передать заголовки здесь. $ url = "http://fantasysports.yahooapis.com/fantasy/v2/team/223.l.431.t.1"; $ ch = curl_init(); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ ch, CURLOPT_URL, $ url); // получить содержимое URL $ data = curl_exec ($ ch); // выполнить запрос curl curl_close ($ ch); $ xml = simplexml_load_string ($ data); print_r ($ xml); exit; – xyz

+0

Пожалуйста, [edit] (http://stackoverflow.com/posts/27903093/edit) и добавьте код в комментарий к своему вопросу – SearchAndResQ

ответ

1

После того, как вы бы получили маркер доступа OAuth 2.0, используйте его в следующем код:

$token = "<token>"; 

$url = "https://fantasysports.yahooapis.com/fantasy/v2/team/223.l.431.t.1?format=json"; 

$headers = array(
    'Authorization: Bearer ' . $token, 
); 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); 
$response = curl_exec($ch); 
curl_close($ch); 
$json = json_decode($response); 
print_r($json); 

Обратите внимание, что она представляет маркер в заголовке Authorization HTTP через защищенный транспортный канал с использованием https схемы URL и запросы, чтобы вернуть содержимое как JSON, используя параметр запроса URL-адреса format.

+0

Может ли кто-нибудь сказать, как создать токен из ключа потребителя и секретного – xyz

+0

, здесь прописано: https://developer.yahoo.com/oauth2/guide/ –

+0

Спасибо. Это помогает – xyz