Google Client не выполняет проверку маркера на внутреннем сервере

45
4

Я загрузил проект из Try Sign-in для Android, создал проект в Google API Console. Я успешно настроил проект signin и запустил приложение в эмуляторе. Я вставил идентификатор веб-клиента OAuth в strings.xml. Затем открыли эту IdTokenActivity и получили idToken.

Я скопировал этот токен и создал запрос с помощью POSTMAN на свой сервер http://localhost/api/googlesignin/hello

На сервере у меня есть этот код:

public function hello(Request $request)
{
$idToken = $request->get('idToken');
$client = new \Google_Client([
'client_id' => '[SAME CLIENT ID AS THE ONE IN STRINGS.XML]'
]);

$payload = $client->verifyIdToken($idToken);
var_dump($payload)
}

Но это возвращает FALSE означает, что он не может проверить $idToken. Но используя проверку токена конечной точки, например:

https://www.googleapis.com/oauth2/v3/tokeninfo?id_token={$idToken}

возвращает код состояния 200 и всю информацию об этом пользователе.

Я не знаю, почему GoogleClient не может проверить токен? Я использую неправильный идентификатор клиента?

EDIT: Я нашел источник проблемы: я случайно вставил дважды ClientID:

'client_id' => 'client-id-tokenclient-id-token'

-.-

спросил(а) 2017-02-26T19:16:00+03:00 2 года, 9 месяцев назад
0
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема