我使用Range-6-社会化登录在我的网站上与谷歌登录,如链接所示。现在,它返回以下数据=>
email:"xxxxx"
id:"xxxxxxx"
idToken:"xxxx.xxxxxxxxx.xxxxxx"
image:"https://lh5.googleusercontent.com/xxxx/photo.jpg"
name:"Abhishek Jaiswal"
provider:"google"
token:"ya29.GlztBZpLW2v1jld20GR0iHOjMiveYmDhnaDRjWmsmh8tH_DSVW4-lRnYIL4Eau2-ZKVXlFFK-alCk5-REBR22aKkeUUIats14KtXEGfHlZIw5iIlKP5LSuEAtmnG0w"我在Web上将idToken解码为JSON网络令牌解码器,交叉测试令牌(由google提供的accessToken)的"at_hash“值为idToken。在进行了大量的验证之后,我检查了用户的预先注册情况,并在if块中注册了他。
注意:,我正在手动进行这些验证和注册。因此,我不使用网络ApiIdentity提供的方法,比如ExternalLogin等等。
在正常登录的情况下,我向http://localhost:57310/token发出一个带有用户名、密码和grant_type的post请求,这为我提供了accessToken,因此它是被授权的。
但是,在这种情况下,我已经在API上了,所以不需要任何post请求,而且我已经有令牌(通过google),但是这个标记不是由web提供的,所以没有授权。
发布于 2018-07-04 06:25:11
对于这个用例,我建议您使用吴加皮。它将允许您使用Google登录,检索凭据(带有标识的JWT),并请求在Google调用中使用access_token。
在场景的背后,它是一个Google登录API集成。因此,不必担心刷新access_token (例如),也不需要验证JWT签名。
https://stackoverflow.com/questions/51162946
复制相似问题