Я пытаюсь аутентифицировать в YouTube через их API Данных и просто должен знать, как заголовки должны быть переведены из своего примера (ниже) к вызовам функции PHP+CURL. Причем запутывающая часть является частью Авторизации, которая повреждает имя/значение, соединяющееся с его собственным набором пар значения и имени.
Эта документация - все хорошо и хороший кроме, я не знаю, как отформатировать то, чего они требуют в заголовках.
Их пример:
POST /accounts/OAuthGetRequestToken HTTP/1.1
Host: https://www.google.com
Content-Type: application/x-www-form-urlencoded
Authorization: OAuth
oauth_consumer_key="example.com",
oauth_signature_method="RSA-SHA1",
oauth_signature="wOJIO9A2W5mFwDgiDvZbTSMK%2FPY%3D",
oauth_timestamp="137131200",
oauth_nonce="4572616e48616d6d65724c61686176",
oauth_version="1.0"
scope=http://gdata.youtube.com
Это не должно быть необычно, я просто должен сделать ключевой обмен для одной учетной записи, таким образом, я могу загрузить видео автоматически. Я просто не знаю, как отформатировать объекты Авторизации в массив заголовков для моего
curl_setopt($ch, CURLOPT_HEADER, $headers);
Справка?
Раньше я не использовал API-интерфейс YouTube, но я создал свой собственный API-интерфейс REST с использованием OAuth для веб-приложения.
заголовок должен быть: application / x-www-form-urlencoded и, как сказано в примере, такие параметры, как oauth_consumer_key, oauth_signature_method, oauth_signature и т. д., должны быть отправлены с помощью сообщения, поэтому вам нужно указать это так:
$header[] = 'Content-Type: application/x-www-form-urlencoded';
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, urlencode("oauth_consumer_key=example.com&
oauth_signature_method=RSA-SHA1&
oauth_signature=wOJIO9A2W5mFwDgiDvZbTSMK%2FPY%3D&
oauth_timestamp=137131200&
oauth_nonce=4572616e48616d6d65724c61686176&
oauth_version=1.0"));
Надеюсь, это поможет: D
С уважением.