Гугл сменили способ отправки пуш-уведомлений и перешли на авторизацию через OAuth2
То есть в заголовке запроса на отправку пуша сейчас нужно отправлять "Authorization", "Bearer " + token
В инструкции по миграции указано что нужно получить токен с помощью библиотеки google-auth-library-php
И для этого нужно получить файл credentials.json - я его получил по инструкции
Попробовал код из примера:
putenv('GOOGLE_APPLICATION_CREDENTIALS=/var/www/html/credentials.json');
$scopes = ['https://www.googleapis.com/auth/drive.readonly'];
$middleware = ApplicationDefaultCredentials::getMiddleware($scopes);
$stack = HandlerStack::create();
$stack->push($middleware);
$client = new Client([
'handler' => $stack,
'base_uri' => 'https://www.googleapis.com',
'auth' => 'google_auth' // authorize all requests
]);
$response = $client->get('drive/v2/files');
Пришел ответ:
{
"kind": "drive#fileList",
"etag": "\"skD00QgZZ0FB6U5ufzrrxrFjqyA\"",
"selfLink": "https://www.googleapis.com/drive/v2/files",
"incompleteSearch": false,
"items": []
}
Но токена тут нет. Как правильно получить OAuth токен для отправки пуш-уведомлений?