Я использую Google Таблицы API с PHP и последовал краткое руководство, которые можно найти здесь https://developers.google.com/sheets/quickstart/phpRefreshToken Не клеится отправить обратно после того, как я получаю новый токен Google листы API
Когда я разрешаю правильно и хранить следовать JSon файлу в speicfied пути
{
"access_token": "xxxxxxx",
"token_type": "Bearer",
"expires_in": 3600,
"refresh_token": "xxxxxx",
"created": 1472731452
}
После этого срока следующего сработали в моем коде
if ($client->isAccessTokenExpired()) {
$client->fetchAccessTokenWithRefreshToken(
$client->getRefreshToken()
);
$this->filesystem
->put(
self::CREDENTIALS,
json_encode($client->getAccessToken())
);
}
Теперь мой есть sue - это когда этот код запускается, он обновит мой файл примерно так:
{
"access_token": "xxxxxxx",
"token_type": "Bearer",
"expires_in": 3600,
"created": 1472731452
}
Как вы видите, больше нет токенов обновления. По истечению этого маркеров я начала получать следующее сообщение об ошибке
[LogicException]
refresh token must be passed in or set as part of setAccessToken
Что perfactly понятно, потому что у меня нет обновления маркеров там больше.
Мой вопрос: почему токен обновления удаляется? Я называю те же методы, что и один в кратком руководстве https://developers.google.com/sheets/quickstart/php
я говорю specificaly об этой части в руководстве
// Refresh the token if it's expired.
if ($client->isAccessTokenExpired()) {
$client->fetchAccessTokenWithRefreshToken($client->getRefreshToken());
file_put_contents($credentialsPath, json_encode($client->getAccessToken()));
}
Да, это намного лучше, спасибо! Я только что снова привязал токен обновления, прежде чем сохранить его :) – Steve