『hduhelp』如何使用助手鉴权/使用助手的开放服务

官方文档:https://open.hduhelp.com/docs/develop/
因为官方文档写得有些抽象,鄙人搞懂之后特作此文以记录
PS:全程使用
https
申请票据
首先,作为第三方软件,在助手许可后你是可以调用助手的api的
助手方面会提供给你一对字符串密钥
| 名称 | 票据 |
|---|---|
client_id |
用于识别服务提供方的 id |
client_secret |
用于证明服务方身份的密钥 |
获取 access_token
这个要一来二去搞两回,有点麻烦
首先,你要构造一个发起请求的 URL ,然后让用户在浏览器中访问
1 | https://api.hduhelp.com/oauth/authorize?response_type=code&client_id=[提供的clientID]&redirect_uri=[callback对应的url]&state=[您自己生成的state] |

自己替换成实际的字符串就行,不用带括号
redirect_Url指的是在助手那边鉴权成功后跳转的路由,下面以http://localhost为例state是你自己生成的,据说是用来防 CSRF 的,但我好像没看出来是怎么防的

什么老王八蛋哇,@eson
之后就跳转到统一身份认证平台



最后重定向到你的后台 URL ,并且可以看见还附带了 code 和 state 两个参数
现在你才能去请求 access_token
构造一个 GET 请求,内容如下
1 | https://api.hduhelp.com/oauth/token?client_id=[提供的clientID]&client_secret=[提供的client_secret]&grant_type=authorization_code&code=[callback中获取的code]&state=[callback中获取的state] |

是不是很麻烦?麻烦就对了,再拿这个去申请 access_token

现在就拿到手了
调用 API
拿到 access_token 之后,我们就可以去调用 API 了,比如这个校园时间的
只需要在 HTTP 上添加 Authorization 头来进行鉴权,值为 token [access_token]

评论
GiscusTwikoo