1. 公共说明
请求参数
所有的开放接口都需要在接口的 URI 带上以下公共参数
source
:平台来源(小钛提供给合作方source
与ourceSecretKey
)nonce
:防重放校验参数,随机12位数字,测试环境固定一个值亦可timestamp
:时间戳,单位秒,服务器时间 +- 10分钟sign
: 根据请求 URL 携带的其余参数生成的签名,不需要包含psot
的form-data
内的参数appSecretKey
:获取来源【系统管理】-【机器人管理】-【机器人信息】
响应格式
{
"code":0, // 回复状态码
"msg":"success", // 状态码对应反馈信息
"data":null|object|array // 回复数据,内容视各接口具体说明
}
错误码说明
返回码 | 说明 |
---|---|
1 | 参数校验失败 |
2 | 无效时间戳 |
3 | 重复请求 |
4 | secretKey 校验异常 |
5 | sign 签名校验失败 |
6 | 数据获取异常 |
7 | 服务调用异常 |
500 | 服务执行异常 |
签名计算方式
下面提供 PHP 的签名实现方式
/**
* name:getSignature
* desc:计算签名
* param:$secretKey {string} 合作方key+应用key获得,格式【sourceSecretKey_appSecretKey】,部分不需要应用ID的API只需传【sourceSecretKey】
* param:$params {array} URI携带的参数
* return:$serverSign {string} 计算出的签名
*/
getSignature($secretKey,$params)
{
ksort($params);
$str = '';
foreach ($params as $key => $value){
$str .= '&' . $key . '=' . $value;
}
$str = ltrim($str,'&');
// 使用secretKey作为key签名
$serverSign = hash_hmac('sha256', $str, $secretKey);
$serverSign = md5($serverSign);
return $serverSign;
}