签名

签名生成的通用步骤如下

第一步,设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。

【注:如果返回参数中为对象数组则将对象数组转为集合S,将集合S内非空参数值的参数按照参数名ASCII码从小到大排序】

第二步,在stringA最后拼接上appsecret得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,再将得到的字符串所有字符转换为大写,得到sign值signValue。

假设配置参数如下:

appid= testappid
appsecret= testappsecret

假设请求的参数如下:

appid=testappid
attach=附加数据
auth_code=134701064877777777
body=测试商品名称
nonce_str=4WTYWD55S9695NXJZ53R3PM8UV43ZGHA
out_trade_no=20180418161909994J3QJGOA
total_amount=1
version=V1.0

第一步对参数按照key=value的格式,并按照参数名ASCII字典序排序

stringA=’appid=testappid&attach=附加数据&auth_code=134701064877777777&body=测试商品名称&nonce_str=4WTYWD55S9695NXJZ53R3PM8UV43ZGHA&out_trade_no=20180418161909994J3QJGOA&total_amount=1&version=V1.0’;

第二步拼接API密钥

stringSignTemp=stringA+’&appsecret=testappsecret’
sign=MD5(stringSignTemp).toUpperCase()='352AD703B3EC2550E8F0C4B1F382B7A3’
Copyright © 创匠科技 2018 all right reserved,powered by Gitbook该文件修订时间: 2018-08-08 11:53:58

results matching ""

    No results matching ""