我应该如何处理google oauth响应?
所以,我得到了谷歌在认证时的回应:我应该如何处理google oauth响应?,oauth,google-oauth,google-authentication,Oauth,Google Oauth,Google Authentication,所以,我得到了谷歌在认证时的回应: { "user": { "id": "116807551237969746774", "email": "123456@gmail.com", "verified_email": true, "name": "John Doe", "given_name": "John", "family_name": "Doe", "picture": "https:\/\/lh3.googleuserconten
{
"user": {
"id": "116807551237969746774",
"email": "123456@gmail.com",
"verified_email": true,
"name": "John Doe",
"given_name": "John",
"family_name": "Doe",
"picture": "https:\/\/lh3.googleusercontent.com\/-XdUIqdMkCWA\/AAAAAAAAAAI\/AAAAAAAAAAA\/4252ldubv5M\/photo.jpg",
"locale": "en"
},
"credentials": {
"access_token": "ya29.GlsSBIA_hMKZIDE_wqJAJS0vrHD_Wd2HfwRTTvLISv0i1uFICCqz4JdEZcL09mFFlGdt71D9pW80SLShHgyeSOZgnWcL5piL5m0jYo1TMU6o0fDLnqGAWm6BY-Wl",
"token_type": "Bearer",
"expires_in": 3600,
"refresh_token": "1\/az_TmhPRaYG5NDH6L9gBeNo6STOD9EbTt1VkkBmp3IQ",
"id_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjBlNmExN2I2YjU4MGIzNTFmMGQ5YmEzMzY2YTU0Y2U1NmViOWIxN2UifQ.eyJhenAiOiIxMDAzMjk3NzQ4MDc1LWsxdml0OGMxMHJ1ZnM4cjZpYmZyYmxlZmJhamFoZmllLmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwiYXVkIjoiMTAwMzI5Nzc0ODA3NS1rMXZpdDhjMTBydWZzOHI2aWJmcmJsZWZiYWphaGZpZS5hcHBzLmdvb2dsZXVzZXJjb250ZW50LmNvbSIsInN1YiI6IjExNjgwNzU1MTIzNzk2OTc0Njc3NCIsImVtYWlsIjoiNzA0MzA2N0BnbWFpbC5jb20iLCJlbWFpbF84PIXpZmllZCI6dHJ1ZSwiYXRfaGFzaCI6IkdrOHFjMTdCcEVGVGZmWkpKbkh6NGciLCJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJpYXQiOjE0ODk4MTIxMzksImV4cCI6MTQ4OTgxNTczOSwibmFtZSI6IkFudG9uIEFsZWtzYW5kcm92IiwicGljdHVyZSI6Imh0dHBzOi8vbGg0Lmdvb2dsZXVzZXJjb250ZW50LmNvbS8tTEJuMTlWX1NEN3cvQUFBQUFBQUFBQUkvQUFBQUFBQUFBQUEvQUFvbXZWMTRMVFIycUgtOXJ5S2dScjIxd3A1Z1FZRGNmUS9zOTYtYy9waG90by5qcGciLCJnaXZlbl9uYW1lIjoiQW50b24iLCJmYW1pbHlfbmFtZSI6IkFsZWtzYW5kcm92IiwibG9jYWxlIjoiZW4ifQ.BHv5BP3ZsagvunfMzGLwmxkBdtoRocPa_PXdq2lrd4D9BoFGkK06eJVbNNbcPOFdAMba3V5lIIG_L499gIy3TTz_PIHBPi6DMSp6uyfkCwf2n-PspZtTbTRlUm5ZvRdAyPEEyLLkWllKkMsRk-Nwp3vhyOLnExzH7SXiEefU4kaXXCpjsHV3GvZ-yhrmNlicEY3TPLwI-tl_lydXTBXRRiPZBGWjHK75hqvQzUktC2Flimd7JnCLhF0FOS3yFKc5D11WPKMOO4YkIQDbBrKY64vyxQAd-Zb2KfvXZi6Dorq7IJF6sK2GAfI3edSaoMZBMa0-x2V7FuFIBLtTgGRnsw"
}
}
我还没有找到关于如何使用凭据的文档
此响应的一部分?我应该使用什么来识别用户?为了恢复会话,客户端(ios/android应用程序)上应该保存什么作为令牌?expires\u in:3600是什么意思?我该怎么办?token\u type:Bearer
是什么意思?我为什么需要它?等等
谢谢@pinoyyid的澄清! 我要找的主要东西是: 在服务器端,使用此url从
凭据中获取访问\u令牌
属性并进行验证
https://www.googleapis.com/oauth2/v1/tokeninfo?access_token={your access_token}
对提供的其余数据执行任何操作
就个人而言,我更喜欢生成自己的令牌,将其保存在客户端,并使用它来恢复用户的会话(以验证其身份)。一旦令牌因任何原因丢失,用户将再次执行整个过程。我应该如何处理此响应中的凭据部分?
高兴吧,因为你已经完成了困难的部分
我应该使用什么来识别用户?
你喜欢什么就做什么,或者什么都不做。这取决于你的应用程序的用例
为了恢复会话,客户端(ios/android应用程序)上应该保存什么作为令牌?
刷新令牌。请注意,“恢复会话”是错误的术语。在OAuth/REST中,没有会话
expires\u in:3600是什么意思?我该怎么办?
这意味着访问令牌将在1小时(3600秒)后过期。您应该做的是使用刷新令牌通过按所述过帐来获取新的访问令牌
token\u type:Bearer是什么意思?
这意味着无论何时尝试访问Google API,都应该将访问令牌放在HTTP授权头中。例如授权:“承载AAAAA”
其中AAAAA是访问令牌
我为什么需要它?
向谷歌证明您的应用程序已获得该资源所有者授予的访问谷歌资源(如驱动器中的文件)的权限