Access token说明
58巧房开放平台采用OAuth2.0协议作为标准授权协议,应用访问开放平台API时,需要使用应用的密钥获取access token。
- access token具有时效性,有效期为2小时,失效后,需重新获取。
- 可在失效前使用刷新接口刷新access token有效期。
- 重新获取access token会导致上次获取的token失效,建议开发者使用中控服务器统一获取和刷新access token,以免造成冲突
- 获取access token接口每日最大调用次数为1000次,建议开发者获取到token后进行本地缓存,在失效前再进行刷新或重新获取
- appSecret和access token需要妥善保存,以免造成数据泄露,建议开发者只在服务端获取或刷新token,切勿暴露在客户端
获取Access token
请求方式:GET
请求地址:/api/jediopenplatformopenapi/token/getToken
请求参数:
参数名 | 描述 | 数据类型 | 必填 | 字节长度 | 示例 |
---|---|---|---|---|---|
X-AUTH-OPENPLATFORM-APP-ID | 开放平台Appid | String | 是 | 64 | f02859ecd4dbc399573575fd9f6b9e1e |
X-AUTH-SIGN | sha1Hex签名 | String | 是 | 500 | 详见示例: 签名方式 |
X-TIME-STAMP | 时间戳(毫秒) | String | 是 | 20 | 1631946536000 |
X-Client | 调用方类型 | String | 是 | 10 | android / ios / web / server / open |
User-Agent | UA,用于记录客户端信息 | String | 是 | 100 | 服务端默认值:curl |
companyUuid | 公司uuid | String | 是 | 100 | 32221635-C638-4A8E-8F26-8E7C6B58EAEB |
请求示例:
curl --location --request GET 'https://qfopenapi.qiaofangyun.com/api/jediopenplatformopenapi/token/getToken' \
--header 'X-AUTH-OPENPLATFORM-APP-ID: b1f8509ca53b4b9691860b3298a7e99f' \
--header 'X-AUTH-SIGN: 9d1d672fc12097c7e5f5603e3c7d954db2e181c3' \
--header 'X-TIME-STAMP: 1632280869000' \
--header 'X-Client: server' \
--header 'User-Agent: curl' \
--header 'companyUuid: 32221635-C638-4A8E-8F26-8E7C6B58EAEB' \
--data-raw ''
响应参数:
参数名 | 描述 | 数据类型 | 必填 | 字节长度 | 示例 |
---|---|---|---|---|---|
accessToken | 授权token | String | 是 | 256 | 69eee712b6fd76c8a2804e42c1e92bcd |
expireIn | 有效期 | int | 是 | 7200 |
响应示例:
{
"responseCode": "1",
"responseMessage": "success",
"responseType": null,
"data": {
"accessToken": "42d44a63b692502e89f099002ba93aa2",
"expiresIn": "7200"
}
}
刷新Access token
请求方式:GET
请求地址:/token/refreshToken
请求参数:
参数名 | 描述 | 数据类型 | 必填 | 字节长度 | 示例 |
---|---|---|---|---|---|
X-AUTH-OPENPLATFORM-APP-ID | 开放平台Appid | String | 是 | 64 | f02859ecd4dbc399573575fd9f6b9e1e |
X-AUTH-SIGN | sha1Hex签名 | String | 是 | 500 | 签名示例 |
X-TIME-STAMP | 时间戳(毫秒) | String | 是 | 20 | 1631946536000 |
X-Client | 调用方类型 | String | 是 | 10 | android / ios / web / server / open |
User-Agent | UA,用于记录客户端信息 | String | 是 | 100 | 服务端默认值:curl |
companyUuid | 公司uuid | String | 100 | 是 | 32221635-C638-4A8E-8F26-8E7C6B58EAEB |
请求示例:
curl --location --request GET 'https://qfopenapi.qiaofangyun.com/api/jediopenplatformopenapi/token/getToken' \
--header 'X-AUTH-OPENPLATFORM-APP-ID: b1f8509ca53b4b9691860b3298a7e99f' \
--header 'X-AUTH-SIGN: 9d1d672fc12097c7e5f5603e3c7d954db2e181c3' \
--header 'X-TIME-STAMP: 1632280869000' \
--header 'X-Client: server' \
--header 'User-Agent: curl' \
--header 'companyUuid: 32221635-C638-4A8E-8F26-8E7C6B58EAEB' \
--data-raw ''
响应参数:
参数名 | 描述 | 数据类型 | 必填 | 字节长度 | 示例 |
---|---|---|---|---|---|
accessToken | 授权token | String | 是 | 256 | 69eee712b6fd76c8a2804e42c1e92bcd |
expireIn | 有效期 | int | 是 | 7200 |
响应示例:
{
"responseCode": "1",
"responseMessage": "success",
"responseType": null,
"data": {
"accessToken": "42d44a63b692502e89f099002ba93aa2",
"expiresIn": "7200"
}
}
签名方式
import org.apache.commons.codec.digest.DigestUtils;
String sign = DigestUtils.sha1Hex(appId + "|" + timeStamp + "|" + appSecret);