用Javascript解码Google Oauth2访问令牌
Decode Google Oauth2 Access Token with Javascript
我想用javascript显示google oauth2提供的访问令牌(given_name、family_name、email、userid…(中的所有信息。
有没有一个好的例子/演示已经完成了?如果没有,当您在oauth2上使用javascript登录时,解码访问令牌的最佳方法是什么。
我发现了这个显示姓名和个人资料图片的示例,但我不明白他们是如何做到的:(http://www.gethugames.in/blog/2012/04/authentication-and-authorization-for-google-apis-in-javascript-popup-window-tutorial.html)
这些信息不在令牌中,这只是一个用作授权证明的令牌,对于大多数或所有Google API,它需要每小时刷新一次。该令牌证明用户已授权谷歌将该信息提供给该程序。
在该示例步骤5中,对getUserInfo((的调用将令牌传递回Google。要使呼叫工作并获取信息,用户必须事先授予该权限:
USERINFO_SCOPE: 'https://www.googleapis.com/auth/userinfo.profile'
权限和授权都与应用程序绑定在一起。
您可以通过此功能进行解码-
const {OAuth2Client} = require('google-auth-library');
const client = new OAuth2Client(CLIENT_ID);
async function verify() {
const ticket = await client.verifyIdToken({
idToken: token,
audience: CLIENT_ID,
});
const payload = ticket.getPayload();
const userid = payload['sub'];
console.log(userid);
}
verify().catch(console.error);
输出为:-
{ iss: 'accounts.google.com',
azp:
'89838985845-261g3g9ob1244uvajvvj4fkueehhdfhsj.apps.googleusercontent.com',
aud:
'89838985845-261g3g9ob1244uvajvvj4fkueehhdfhsj.apps.googleusercontent.com',
sub: '1001728418648724577297',
email: 'rajputankit22@gmail.com',
email_verified: true,
at_hash: 'y0_OmfSbg-iHOq__Km-5kw',
name: 'Ankit Kumar Rajpoot',
picture:
'https://lh3.googleusercontent.com/a-/AAuE7mBrCW_ubLUHpnqwQZ1DvLDb9E4IHxfy43K6amNwt1Q=s96-c',
given_name: 'Ankit',
family_name: 'Kumar Rajpoot',
locale: 'en',
iat: 1580591026,
exp: 1580594626,
jti: 'fbbfca7sghsdhjfghsdfgh74888jhsd88s986d9876b30d' }
相关文章:
- 使用Javascript获取Twitter访问令牌
- FB.login访问令牌facebook javascript SDK
- Phonegap:获取访问令牌时出现LinkedIn登录错误
- 访问令牌和响应数据
- 访问令牌facebook未激活
- OAuth和访问令牌
- 如何安全地获取&使用Facebook应用程序访问令牌发送通知使用PHP&Javascript
- 使用Javascript向ID数组发送通知时出现Facebook访问令牌错误
- 如何使用密码和用户名从 bitly 获取访问令牌
- Facebook Javascript SDK:发布到提要时验证访问令牌时出错
- Axios CORS 问题与 Github oauth 未获取访问令牌
- 在 js sdk 中手动设置访问令牌
- 如何使用访问令牌与Facebook Graph API
- 打开图形:Java脚本:必须使用活动访问令牌来查询有关当前用户的信息
- Google_Auth_Exception'带有消息'获取OAuth2访问令牌时出错,消息:'i
- 如何在Google OAuth2中获得用户登录并同意后的访问令牌和刷新令牌
- 在oAuth2中窃取访问令牌
- Oauth2隐式流与单页应用程序刷新访问令牌
- 用Javascript解码Google Oauth2访问令牌
- 如何在页面刷新时发送OAuth2访问令牌