K12服务体系技术规范 API接口说明

授权接入-请求签名

URL:/authorization/signature?client_id={client_id}&grant_type={grant_type}

请求方式:GET

Headers:

参数 说明
Authorization 数字签名(生成规则:base64(hmac-sha1(client_secret,client_secret+client_id+timestamp)))
TimeStamp 当前时间戳(单位:秒)
签名规则:
例如:client_id = bhHy5Z4I0DRLFHe3rS03o2zy7fp2oLz0
     client_secret = LQKd4qI3gaUTzZdo0j1557mkxnK0S4ze
     timestamp = 1620357843
1.拼接
    将client_secret、client_id、timestamp按顺序连接起来,此时生成的字符串为待签名字符串(例:LQKd4qI3gaUTzZdo0j1557mkxnK0S4zebhHy5Z4I0DRLFHe3rS03o2zy7fp2oLz01620357843)。
2.hmac-sha1加密
    将待签名字符串使用hmac-sha1加密算法转换,密钥为平台颁发的client_secret,生成sha1字符串(例:7bad2cecfb34904857ea05317767b3e13119e813)。
3.base64编码
    将sha1字符串进行base64编码得到数字签名(例:N2JhZDJjZWNmYjM0OTA0ODU3ZWEwNTMxNzc2N2IzZTEzMTE5ZTgxMw==)。

参考: 在线HMAC计算 Base64在线编码解码

参数:

名称 必选 类型 说明
client_id true char 平台发放给第三方应用的令牌
grant_type true char 授权模式,此处的值固定为"client_credentials"

响应:

名称 类型 说明
status int 状态
msg char 返回信息
access_token char 访问令牌
expires_in char 调用凭证超时时间(单位:秒)

返回的结果示例:

成功返回:

{
    "access_token": "e79fb748c3c8ab532a8fcf2da53ae54d",
    "expires_in": 86400
}

失败返回:

{
    "status": <ErrorCode>,
    "msg": <ErrorMessage>
}