GMAIL API — постоянный токен доступа

После многих исследований я могу теперь получить свою входящую почту gmail с моим php-кодом, но я хочу знать, возможно ли получить постоянный токен для доступа к API без необходимости входа в систему с OAuth.

Я делаю небольшое приложение, которое будет извлекать 3 разных почтовых ящика Gmail, и люди, которые будут работать с моим приложением, не будут тратить свое время на авторизацию моего приложения Gmail для разных почтовых ящиков.

Я имею в виду, есть ли способ избежать авторизации каждый раз, когда я пытаюсь получить свой почтовый ящик gmail, как постоянный токен, который я получу только один раз, а затем сохранить его в своей базе данных?

Спасибо за вашу помощь.

1

Решение

Нет такого понятия, как постоянный токен, но есть токен обновления:

Авторизация обработки
Запросы

Обменяйте код авторизации на токен доступа

Код авторизации — это одноразовый код, который может использовать ваш сервер
обмен на токен доступа. Этот токен доступа передается в Gmail
API для предоставления вашему приложению доступа к пользовательским данным в течение ограниченного времени.

Если вашему приложению требуется автономный доступ, ваше приложение будет в первый раз
обменивается кодом авторизации, также получает токен обновления
что он использует для получения нового токена доступа после того, как предыдущий токен
истекший. Ваше приложение хранит этот токен обновления (обычно в
база данных на вашем сервере) для дальнейшего использования.

Важное замечание: Всегда храните токены обновления пользователя. Если ваше приложение нуждается
новый токен обновления, он должен отправить запрос с Approval_prompt
для параметра запроса установлено значение force. Это заставит пользователя видеть диалог
дать разрешение на вашу заявку снова.

Вот фрагмент из Gmail API Quickstart

// Refresh the token if it's expired.
if ($client->isAccessTokenExpired()) {
$client->fetchAccessTokenWithRefreshToken($client->getRefreshToken());
file_put_contents($credentialsPath, json_encode($client->getAccessToken()));
}
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector