Skip to content

API授权 ​

授权说明 ​

授权模式 ​

使用凭证式(client credentials)授权模式。

授权模式流程说明 ​

第一步,A 应用在命令行向 B 发出请求。 第二步,B 网站验证通过以后,直接返回令牌。

授权模式结构说明 ​

接口说明 ​

获取access_token ​

获取access_token。开发者需要缓存access_token,用于后续接口的调用。当access_token失效或过期时,需要重新获取。

请求URL ​

http
GET /api/oauth2/server/tokens?grant_type=client_credentials&client_id=${CLIENT_ID}&client_secret=${CLIENT_SECRET} HTTP/1.1
Accept: application/json
URL 参数 ​
字段类型是否必须描述
grant_typeSTRING是授权类型,固定值 :client_credentials。表示采用凭证式
client_idSTRING是客户端id
client_secretSTRING是客户端secret

返回对象的格式说明 ​

字段类型说明
access_tokenSTRINGaccess_token
token_typeSTRING固定值 "bearer"
expires_inSTRING有效时间,单位为秒,默认为12小时
scopeSTRING授权作用域,目前只支持 "sudo"

校验access_token ​

校验access_token

请求URL ​

http
GET /api/oauth2/server/tokens/check?token=${ACCESS_TOKEN} HTTP/1.1
URL 参数 ​
字段类型是否必须描述
tokenSTRING是需较验的 access_token

返回对象的格式说明 ​

字段类型说明
access_tokenSTRINGaccess_token
token_typeSTRING固定值 "bearer"
expires_inSTRING有效时间,单位为秒
scopeSTRING授权作用域,目前只支持 "sudo"

撤销access_token ​

撤销access_token

请求URL ​

http
GET /api/oauth2/server/tokens/revoke?token=${ACCESS_TOKEN} HTTP/1.1
URL 参数 ​
字段类型是否必须描述
tokenSTRING是待撤销的 access_token

返回对象的格式说明 ​

字段类型说明
codeINTEGER0 为成功,其它值为失败
msgSTRING操作结果

access_token及sudo说明 ​

access_token ​

在Header中携带 ​

http
GET /api/{URI} HTTP/1.1
Authorization:Bearer ${ACCESS_TOKEN}

拼接在url中作为Query String Parameter的一部分 ​

http
GET /api/{URI}?access_token=${ACCESS_TOKEN} HTTP/1.1

sudo ​

设置sudo ​

sudo拼接在url中作为requestParam,sudo支持通过用户的id、loginName(登录名)、email(邮箱)、mobile(手机)传递用户身份。 以下四种sudo格式为:

  1. sudo=uid:${UID}
  2. sudo=loginName:${LOGIN_NAME}
  3. sudo=email:${EMAIL}
  4. sudo=mobile:${MOBILE}

注意

sudo=username:${LOGIN_NAME} (不推荐使用)

http
GET /api/{URI}?access_token=${ACCESS_TOKEN}&sudo=uid:${UID} HTTP/1.1

设置租户 ​

如果想使用sudo 功能,操作租户的数据,则要传递 tenantId 或者 tenantCode

http
GET /api/{URI}?access_token=${ACCESS_TOKEN}&sudo=uid:${UID}&tenantId=${tenantId} HTTP/1.1

或

http
GET /api/{URI}?access_token=${ACCESS_TOKEN}&sudo=uid:${UID}&tenantCode=${tenantCode} HTTP/1.1

HENGSHI SENSE API 使用手册