Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Авторизация на сайте через аккаунт Google
Форумы портала PHP.SU » » HTTP и PHP » Авторизация на сайте через аккаунт Google

Страниц (1): [1]
 

1. Михаил - 19 Февраля, 2012 - 17:36:19 - перейти к сообщению
Доброго времени суток!
Возникла острая необходимость добавить на сайте возможность авторизации, используя аккаунт Google.
Просмотрел информацию по АПИ.
нужно отправить запрос по адресу https://www[dot]google[dot]com/accounts/[dot][dot][dot]hGetRequestToken
с необходимыми параметрами.

Цитата:
Если запрос на получение маркера выполнен успешно, Google отвечает сообщением HTTP 200, которое содержит маркер запроса и "секретную" часть.

Пожалуйста, подскажите каким образом нужно отправлять запрос и принимать полученный ответ.

я делал таким образом:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. $headers = array(
  3. 'POST /accounts/OAuthGetAccessToken HTTP/1.1',
  4. 'Host:  https://www.google.com',
  5. 'Content-Type: application/x-www-form-urlencoded',
  6. 'Authorization: OAuth',
  7. "oauth_consumer_key='".$_SERVER['SERVER_NAME']."'",
  8. 'oauth_token="CKF50YzIHxCT85KMAg"',
  9. 'oauth_signature_method="RSA-SHA1"',
  10. 'oauth_signature="wOJIO9A2W5mFwDgiDvZbTSMK%2FPY%3D"',
  11. "oauth_timestamp='".time()."'",
  12. 'oauth_nonce="4572616e48616d6d65724c61686176"',
  13. 'oauth_version="1.0"',
  14. 'scope=http://mail.google.com/mail'
  15. );
  16. $ch = curl_init();
  17. curl_setopt($ch, CURLOPT_URL, "https://www.google.com/accounts/OAuthGetRequestToken");
  18. curl_setopt($ch, CURLOPT_POST, 0);
  19. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  20. curl_setopt($ch, CURLOPT_HEADER, 1);
  21. curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
  22. $error = curl_error($ch);
  23.  
  24. $errno = curl_errno($ch);
  25. $r = curl_exec($ch);
  26. print_r($error);
  27. ?>


Заранее спасибо!

 

Powered by ExBB FM 1.0 RC1