2.2 KiB
2.2 KiB
接口规范
一、请求格式
二、AppId、AppKey 和 AppSercet
-
由双方协定,或由我平台提供
-
AppId:商户号
-
AppKey:长度为16位
-
AppSecret:长度为32位
-
用于
-
卡券、卡密类订单的数据的加密
-
签名时的补充数据
-
-
AppSercet需考虑定期更换
三、请求接口公共参数
可选参数在对接时,请联系对接方,非特殊说明情况下,默认不传递
四、请求签名规则
注意:签名前,需双方协定或由厂商提供AppSecret
sign签名时
-
去掉空格:剔除参数名和参数值的前后空格,包括\n和\r等空值
-
剔除空值:如果参数没有值,不参与签名
-
sign不参与签名,其他字段均参与签名
-
排序生成待签名串:
-
所有参数名按照ascii顺序进行排序
-
并且参数名与参数值通过a=1&b=2的方式将所有参数进行组合
-
生成新的字符串后在字符串后加上请求的方式
-
再加上AppSecret后获得待签名字符串
-
-
进行加密
-
默认进行MD5加密
-
将第三步的待签名字符串进行utf8编码
-
再进行md5操作后得到字符串
-
最后转小写后为签名字符串
-
// 假定 AppSercet 为 ac9fa79db418fd2c61d9bd4c60956f2d5db3a6d781d6f91f2e96327c74dfaccd
// 假定是下订单的接口 POST
// 待签名参数
{
// 公共参数
app_id: '15945681 ',
timestamp: 1740916504,
// 业务参数
charge_account: '18888888888',
buy_num: 2,
customer_price: 1.21,
customer_order_no: 'DD202507010010208888',
product_id: '66668888'
}
// 上述参数的签名字符串(去掉空值、去掉空格;最后加上请求方法和AppSecret)
app_id=15945681&buy_num=2&charge_account=18888888888&
customer_order_no=DD202507010010208888&customer_price=1.21&
product_id=66668888×tamp=1740916504
POSTac9fa79db418fd2c61d9bd4c60956f2d5db3a6d781d6f91f2e96327c74dfaccd
// MD5后转小写,签名字符串为:
4087a959f3488ecb13efe6ef58e3bc67
五、响应公共信息
响应签名规则请参考“请求签名规则”
sign不参与签名,其他字段均参与签名