通过OAuth2.0获取Google API访问令牌的完整指南
创作时间:
作者:
@小白创作中心
通过OAuth2.0获取Google API访问令牌的完整指南
引用
CSDN
1.
https://blog.csdn.net/life16663/article/details/137156024
本文将详细介绍如何通过OAuth2.0获取访问令牌(access token)来调用Google API。内容包括在Google Cloud上创建项目和账户、获取客户端ID和私钥、生成JWT令牌以及使用curl命令获取访问令牌的完整流程。
1. Google的API调用
(1) 前提条件
在开始之前,你需要在Google Cloud平台上创建一个云项目(project),并在项目下创建服务账户(Service Accounts)。
(2) 新建服务账户
(3) 获取客户端ID的私有秘密键
使用以下命令在命令行中将p12格式的密钥转换为jks格式:
keytool -importkeystore -srckeystore loyal-theater-418309-e95646f4fd15.p12 -destkeystore des.jks -srcstoretype pkcs12 -deststoretype JKS
通过以上步骤,你可以完成获取访问令牌的前提条件,获取到clientID和privatekey。
2. 添加生成token的角色
(1) 添加生成token的角色
(2) 指定需要调用的API
接下来,我们将通过生成JWT令牌来从Google服务器上获取访问令牌。
3. 获取访问令牌
JWT header
{"alg":"RS256","typ":"JWT"}
JWT payload
{
"iss":"testgettoken@loyal-theater-418309.iam.gserviceaccount.com",
"scope":"https://www.googleapis.com/auth/playintegrity",
"aud":"https://accounts.google.com/o/oauth2/token",
"exp":1328554385,
"iat":1328550785
}
其中:
iss:在Google Developer Console中创建的服务账号即clientID,格式为xxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxx@loyal-theater-418309.iam.gserviceaccount.comscope:将要使用的API所需指定的范围aud:发行访问令牌的目标网址https://accounts.google.com/o/oauth2/tokenexp:访问令牌有效期限,最大为一个小时(iat+3600秒)iat:访问令牌的发行日(从1970年1月1日00:00:00到现在的UTC秒数)
将上述JWT header和payload通过jks文件中的私钥加密生成签名后,使用以下curl命令获取访问令牌:
curl -d grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer -d assertion={上面生成的JWT} https://accounts.google.com/o/oauth2/token
注意:通过服务器发出请求时,可能会出现JWT签名验证失败的情况。
通过上述步骤获得的访问令牌就可以用来调用所需的API了。
热门推荐
暴打柠檬茶
21项立项指南印发,助力构建公平可持续的医疗服务新生态
如何模仿写作文(进行模仿写作的步骤)
办公室桌子怎么摆放,实现高效工作环境
打造多肉雨滴盆景——养护技巧和方法
怎样让声音变得低沉?
为什么越来越多人把大冰的快手直播间当成树洞?
2025飞机延误赔偿标准及退款政策详解
预订酒店难“取消”,规则谁定?多职能部位参与督促平台、酒店优化退订机制
财务与会计的区别
V2X技术实现更智能安全的自动驾驶
Excel中对相同数据进行标注的多种方法
伴郎的职能:详细的角色和传统
谷歌决定终止开源Android
美国留学生如何利用OPT转换身份
莲藕搭配各类食材,带来别样的美味享受
正常人几小时排一次尿?如何通过观察尿液判断健康状况?
海外仓的费用包括哪些部分构成?带你了解海外仓的费用结构
前庭功能紊乱看什么科
一文读懂,数字隔离芯片如何实现电气隔离?
数字隔离器电源设计的关键考量
蒸蛋需要几分钟?这样做又嫩又滑,一次成功!
雪茄和香烟,哪个的危害更大?
玉帝不如如来?看完就知道,玉帝才是真正的老大
指甲前端变白的原因及预防治疗方法
多路复用技术是什么?有哪些类型
波分复用器:数据中心互连的新引擎
牛粪和羊粪,到底用哪个好?老农用4句俗语讲清楚,看完明白!
乌鲁木齐天山区十大美食:从抓饭到烤包子,品味地道新疆风味
“生日快乐英语”:如何以英文表达生日贺词