Google客户端无法验证后端服务器上的令牌

时间:2017-02-26 16:16:19

标签: php android google-signin googlesigninapi googlesigninaccount

我从Try Sign-in for Android下载了项目,在Google API控制台上创建了项目。我已成功配置signin项目并在模拟器中运行该应用程序。我将OAuth Web客户端ID粘贴到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无法验证令牌?我使用了错误的客户ID吗?

修改: 我找到了问题的根源:我不小心粘贴了两次ClientID:

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

-.-

0 个答案:

没有答案
相关问题