Nasıl PHP ve cURL ile OAuth kullanabilirim?

1 Cevap php

Ben onların Veri API aracılığıyla YouTube'a doğrulamaya çalışıyor ve sadece başlıkları PHP + CURL fonksiyon çağrıları onların örnek (aşağıda) tercüme edilmesi gerektiğini bilmek gerekir ediyorum. Kafa karıştırıcı bölümü ad ve değer çiftleri kendi seti ile ad / değer eşleşmeyi tatili Yetkilendirme kısmı olmak.

This documentation Ben başlıklarını gerektiren ne nasıl şekilleneceğini bilmiyorum hariç tüm iyi ve güzel.

Bunların örnek:

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

Bu fantezi olması gerekmez, ben sadece otomatik olarak videolarınızı yükleyebilirsiniz böylece tek bir hesap için anahtar değişimi yapmak gerekir. Ben sadece bir başlıkları diziye Yetkilendirme öğeleri biçimlendirmek nasıl bilmiyorum benim

curl_setopt($ch, CURLOPT_HEADER, $headers);

Yardım?

1 Cevap

i daha önce youtube API kullanılan vermedi ama ben bir web uygulaması için OAuth kullanarak kendi DİNLENME API yaptık.

the header should be: application/x-www-form-urlencoded and as the example say, the parameters as oauth_consumer_key, oauth_signature_method,oauth_signature etc.. need to be sent using post, so you need to put it like this:

        $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: ben yardımcı olur umarım

Saygılar.