我token-id
从 google 生成的客户端 android 应用程序收到。
如何授权用户使用社交名流?
我现在正在使用 google_api 客户端,但它没有 Socialte 的便利。
问问题
5353 次
3 回答
3
如果您可以获得服务器身份验证代码,则可以将其交换为 accessToken 并使用它来查询 Google+ API。
就我而言,我使用的是cordova库
https://github.com/EddyVerbruggen/cordova-plugin-googleplus
这将为您(如果配置为“离线”)提供serverAuthCode
您可以将其发送到您的服务器。然后,要将其转换为 accessToken,您可以调用此社交名流方法:
$driver = Socialite::driver($provider); // provider is 'google' here
$access_token = $driver->getAccessToken($serverAuthCode);
然后您可以使用此令牌获取用户信息:
$socialUser = $driver->userFromToken($access_token);
只是想帮助其他为此苦苦挣扎的人。
于 2016-12-28T07:24:29.837 回答
3
使用 PHP Google API 客户端库
首先通过composer安装库
$ 作曲家需要 google/apiclient
$client = new Google_Client(['client_id' => env('Google_CLIENT_ID')]); // Specify the CLIENT_ID of the app that accesses the backend
$payload = $client->verifyIdToken($id_token);
if ($payload) {
$userid = $payload['sub'];
// If request specified a G Suite domain:
//$domain = $payload['hd'];
} else {
// Invalid ID token
}
有关更多详细信息,请检查
https://developers.google.com/identity/sign-in/android/backend-auth?authuser=2
于 2020-08-15T00:28:52.303 回答
0
如果你想获取用户信息,你必须使用 accessToken(有时需要 openid)来获取它,最近我做了一个 laravel 包来完成这个请求,检查这里:
于 2016-01-07T15:24:38.010 回答