Google API

В этой статье подробное описание как пригласить друзей. Это самая важная часть для каждого сайта, и ключ к успеху. И так, как простой и эффективный импорт контактов Gmail с использованием авторизации OAuth и API, а так же о получении доступа к Google API.

Демо

В качестве первого шага — позволяет подготовить наш собственный проект в Google API консоли, для начала  откройте эту ссылку  что бы создать свой ​​проект. Затем нам нужно перейти в раздел «API access» и нажмите кнопку «Create OAuth 2,0 это идентификатор клиента.

Google Contacts API - шаг 1

Теперь мы должны ввести имя для нового проекта:

Google Contacts API - шаг 2

Нажмите кнопку next, на втором шаге мы должны установить адрес места назначения страницы:

Google Contacts API - шаг 3

Наконец, у нас есть наш ID клиента (и секрет):

Google Contacts API - шаг 4

Google API — Получить список контактов

Шаг 1. PHP

Теперь, создайте пустой файл index.php и положите туда следующий код:

index.php



<?php // запретить предупреждения if (version_compare(phpversion(), "5.3.0", ">=") == 1)
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
else
error_reporting(E_ALL & ~E_NOTICE);

$sClientId = 'YOUR_GOOGLE_CLIENT_ID';
$sClientSecret = 'YOUR_GOOGLE_CLIENT_SECRET';
$sCallback = 'http://www.pixelcom.crimea.ua/addons/google-api/index.php';
// url обратного вызова, не забудьте изменить его на свой!
$iMaxResults = 20; // max results
$sStep = 'auth'; // current step

// включить библиотеку GmailOath https://code.google.com/p/rspsms/source/browse/trunk/system/plugins/GmailContacts/GmailOath.php?r=11
include_once('classes/GmailOath.php');

session_start();

// подготовка новых случаев GmailOath и GmailGetContacts
$oAuth = new GmailOath($sClientId, $sClientSecret, $argarray, false, $sCallback);
$oGetContacts = new GmailGetContacts();

if ($_GET && $_GET['oauth_token']) {

$sStep = 'fetch_contacts'; // шаг запроса контактов

// декодирования запроса знак и секрет
$sDecodedToken = $oAuth->rfc3986_decode($_GET['oauth_token']);
$sDecodedTokenSecret = $oAuth->rfc3986_decode($_SESSION['oauth_token_secret']);

// добавить 'oauth_verifier'
$oAuthVerifier = $oAuth->rfc3986_decode($_GET['oauth_verifier']);

// подготовка маркера доступа, расшифровать его, и получить список контактов
$oAccessToken = $oGetContacts->get_access_token($oAuth, $sDecodedToken, $sDecodedTokenSecret, $oAuthVerifier, false, true, true);
$sAccessToken = $oAuth->rfc3986_decode($oAccessToken['oauth_token']);
$sAccessTokenSecret = $oAuth->rfc3986_decode($oAccessToken['oauth_token_secret']);
$aContacts = $oGetContacts->GetContacts($oAuth, $sAccessToken, $sAccessTokenSecret, false, true, $iMaxResults);

// включить массив с контактами в строку html
$sContacts = $sContactName = '';
foreach($aContacts as $k => $aInfo) {
$sContactName = end($aInfo['title']);
$aLast = end($aContacts[$k]);
foreach($aLast as $aEmail) {
$sContacts .= '
' . $sContactName . '(' . $aEmail['address'] . ')

';
}
}
} else {
// подготова маркера доступа и установите его в сессии
$oRequestToken = $oGetContacts->get_request_token($oAuth, false, true, true);
$_SESSION['oauth_token'] = $oRequestToken['oauth_token'];
$_SESSION['oauth_token_secret'] = $oRequestToken['oauth_token_secret'];
}

?>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Google API - Get contact list
<link href=
http://pixelcom.crimea.ua/"css/main.css" rel="stylesheet" type="text/css" />

<?php if ($sStep == 'auth'): ?>
<center>
<h1>Шаг 1. OAuth</h1>
<h2>Пожалуйста, нажмите <a href=
http://pixelcom.crimea.ua/"https://www.google.com/accounts/OAuthAuthorizeToken?oauth_token=<?php echo $oAuth->rfc3986_decode($oRequestToken['oauth_token']) ?>">
эту ссылку</a> чтобы получить доступ для получения контактов</h2>
</center>

<?php elseif ($sStep == 'fetch_contacts'): ?>

<center>
<h1>Шаг 2. Результаты</h1>
<?= $sContacts ?>
</center>
<?php endif ?>


В начале мы включаем библиотеку «GmailOath.php. Эту библиотеку вы можете скачать  здесь . После загрузки — обратите внимание на код. Вы увидите — главное функциональность разделена на 2 секции: авторизация и выборка из списка контактов. Как обычно, — я положил свои комментарии в этом коде для лучшего понимания.

Когда мы нажимаем кнопку разрешения, это откроет страницу авторизации Google, где мы должны предоставить доступ для нашего приложения, чтобы получить наш список контактов:

Google Contacts API - шаг 5

Контакты Google

Заключение

Если у Вас есть предложения новые идеи для статьи — вы можете поделиться ими с нами. Удачи вам в вашей работе!

2 комментария на тему “Google API”

  1. комментарии

    А как сделать, чтобы в гугле при разрешении доступа в контакты было написано реальное имя сайта?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Можно использовать следующие HTML -теги и атрибуты: <a href= http://pixelcom.crimea.ua/"" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>