У меня есть следующий код:
$service_url = 'https://api.familysearch.org/reservation/v1/person/L6GD-YYV';
$curl = curl_init($service_url);
$headr = array();
$headr[] = 'Content-length: 0';
$headr[] = 'Content-type: application/json';
$headr[] = 'Authorization: OAuth '.$_SESSION['fs-session'];
curl_setopt($curl, CURLOPT_HTTPHEADER,$headr);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_POST, true);
//curl_setopt($curl, CURLOPT_POSTFIELDS, $curl_post_data);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
$curl_res = curl_exec($curl);
$response = json_decode($curl_res);
curl_close($curl);
var_dump($curl_res);
var_dump($response);
Когда я пытаюсь получить ресурс, он дает мне 401 Unauthorized, хотя я предоставляю токен доступа. Затем я посмотрел на отправленные заголовки и обнаружил, что ни один из заголовков, которые я установил через этот код (заголовок маркера доступа), не отправляется. Что-то не так с моим кодом, что предотвращает отправку заголовков?
Вам нужно указать заголовок Accept и тип авторизации:
Accept: application/json
Authorization: Bearer YOUR_ACCESS_TOKEN_HERE