Files
order_site/docs/91卡券/2.签名规则示例.md
T
2026-05-04 21:32:12 +08:00

46 lines
1.6 KiB
Markdown

# 签名计算规则示例:
# 以下仅做示例说明,实际的签名规则可自行设计。
### 简要描述:
- 除sign字段外,所有参数按照字段名的ascii码从小到大排序后,使用QueryString的格式(即key1=value1&key2=value2…)拼接成字符串后,再在前后追加上 商户密钥 的值,然后转换成32位大写的MD5字符串。
#### <font color='red'>注意事项:如空值参数是否参与签名需要在提供的文档中进行说明哈</font>
**假设 商户密钥 值为:** <font color='red'>rste57w8rsubsnxsb384ur3u9kn5fzhr0a091b3aa4324435aab703142518a8f7</font>
**假设请求参数为:**
```csharp
{
"userId":"1001",
"orderNo":"2023061917481700001",
"productNo":"test01",
"buyNum":1,
"attach":"{\"account\":\"13888888888\"}",
"maxAmount":""
"timestamp":1687168097,
"callbackUrl":"",
"version":"1.0",
"sign":"EF387ED4D401A275498A9FCC6C22116B"
}
```
**验签步骤:**
1. 转换成字符串如下:
```
attach={"account":"13888888888"}&buyNum=1&callbackUrl=&maxAmount=&orderNo=2023061917481700001&productNo=test01&timestamp=1687168097&userId=1001&version=1.0
```
2. 前后追加上 商户密钥 的MD5源串如下:
```
rste57w8rsubsnxsb384ur3u9kn5fzhr0a091b3aa4324435aab703142518a8f7attach={"account":"13888888888"}&buyNum=1&callbackUrl=&maxAmount=&orderNo=2023061917481700001&productNo=test01&timestamp=1687168097&userId=1001&version=1.0rste57w8rsubsnxsb384ur3u9kn5fzhr0a091b3aa4324435aab703142518a8f7
```
3. MD5后转成32位大写的签名值如下:
```
EF387ED4D401A275498A9FCC6C22116B
```