Я создал новое приложение, используя Yahoo API. Как я могу передать требуемые заголовки, используя функциональность CURL? Я получил это сообщение об ошибке при попытке:
<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;
Получив токен доступа 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 с использованием format
Параметр запроса URL.
Других решений пока нет …