Google Client не выполняет проверку маркера на внутреннем сервере
Я загрузил проект из 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'
-.-
Еще в рубрике
- Вопросы
- Googlesigninapi
- Google Client не выполняет проверку маркера на внутреннем сервере