SDK辅助交易接口接入说明
接入安全控制
报文数据签名
原始数据:
{ "appID": "value", // 可使用iOS、Android、HTML的appID "encryptMethod": "NONE", // 固定传入“NONE” "reqData": { "appNo": "A000001" // 接口Request数据 }, "sequenceID": "123456", // 接口调用序列号,开发者生成的唯一字符串 "sign": "value", // 签名结果,见后续说明 "signMethod": "MD5" // 签名方式 }
首先取出reqData里的所有数据,包括'{'和'}'
{ "appNo": "A000001" }
然后拼接上sequenceID获得待签名的字符串
{"appNo": "A000001"}123456
对于HASH类签名算法,还需要在待签名字符串之后拼接上appSecret的值。
在开放平台申请应用之后,每个应用都会有唯一的appID和appSecret
{"appNo": "A000001"}123456appSecret
使用HASH算法对上面的待签名字符串进行签名,最后将签名得到的结果放入‘sign’字段上传。
HASH类算法支持MD5、SHA1、SHA256、SHA512
服务端返回的数据采用同样的算法对rspData进行签名,返回结构如下:
{ "appID": "value", "encryptMethod": "NONE", "errorCode": "错误代码", "errorMsg": "错误信息", "returnCode": "返回代码", "returnMsg": "返回信息", "rspData": { // 接口Response数据 }, "sequenceID": "123456", // 接口调用序列号,开发者生成的唯一字符串 "settlementDate": "value", // 会计日期,预留,用于对账 "sign": "value", // 签名结果,见后续说明 "signMethod": "MD5" // 签名方式 }