Сбой запроса сообщений API Gmail Gmail - Требуется вход в систему - PullRequest
0 голосов
/ 29 января 2020

Я пытаюсь получить список сообщений от текущего пользователя. Я использую клиент Guzzle, чтобы сделать запрос. К сожалению, я не совсем понимаю документы Google об API.

Это то, что у меня есть:

$client = new Client;

$headers = [
    'content-type' => 'application/json',
    'Authorization' => 'Bearer '.$token->access_token
];

$params = [
    'maxResults'    => 10,
    'client_id'     => config('gmail.clientId'),
    'client_secret' => config('gmail.clientSecret'),
];

$response = $client->get('https://www.googleapis.com/gmail/v1/users/me/messages', [
    $headers,
    $params
]);

С этим кодом я получаю сообщение «Ошибка 401 - Требуется вход в систему» ». Как мне этого добиться? В моем приложении каждый пользователь подключен к своей учетной записи Gmail. access_token сохраняются в базе данных.

1 Ответ

0 голосов
/ 29 января 2020

Я не уверен насчет API Google, который вы используете, но у вас определенно есть ошибка, связанная с Guzzle:

$response = $client->get('https://www.googleapis.com/gmail/v1/users/me/messages', [
    'headers' => $headers,
    'query' => $params,
]);

Также в соответствии с документами , вы понимаете Не нужно поставлять client_id и client_secret по каждому запросу. Взгляните на Официальную библиотеку авторизации Google для PHP или / и на полный SDK .

...