2.验签工具
<h3>1. 配置参数说明</h3>
<ul>
<li>需联系顺丰接口人申请appId、sk;</li>
</ul>
<h3>2. 请求方式说明:</h3>
<ul>
<li>
<p>支持请求:
①.只支持传递 JSON 对象;</p>
</li>
<li>不支持请求:
①.不支持文件上传;
②.不支持在 URL 上传递参数如:<a href="http://localhost:8080/test/{userId">http://localhost:8080/test/{userId</a>};
③.不支持对应的 text/xml/html/javascript 传递;
④.不支持在传递的 JSON 对象的 key 和 value 中出现特殊符号和汉字,特别是"="和"&";</li>
</ul>
<h3>3. 具体代码指引:</h3>
<ul>
<li>
<p><code>请求方(适用于主动请求类接口,如下单接口)</code>
<strong>注:请求时除了参数外,需要将sendAppId(分配的APPID)、sign(生成的签名)、timestamp(生成签名的时间戳)放在请求header中,ContentType为application/json!!!</strong>
①.[【Java版】验签请求-接收demo v1.5.java.zip](<a href="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=502af0e3656ae68da490131aea4c726f">https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=502af0e3656ae68da490131aea4c726f</a> "[【Java版】验签请求-接收demo v1.5.java.zip")
②.[【PHP版】验签请求方demo v1.0.zip](<a href="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=3e8e7e053f0886a037a9dd9e1f79f2a0">https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=3e8e7e053f0886a037a9dd9e1f79f2a0</a> "[【PHP版】验签请求方demo v1.0.zip")
③.[【.net版】验签请求方demo v1.0.zip](<a href="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=727742eaafa9500c96999c6715262951">https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=727742eaafa9500c96999c6715262951</a> "[【.net版】验签请求方demo v1.0.zip")
④.[【Python】验签请求方demo v1.0.zip](<a href="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=e0d775197a349aaca67f4cfa1c7d036b">https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=e0d775197a349aaca67f4cfa1c7d036b</a> "[【Python】验签请求方demo v1.0.zip")
⑤.[【ABAP版】生成顺丰接口签名功能函数 v1.0.zip](<a href="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=7e2d95294224ba421e1e482842ea261e">https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=7e2d95294224ba421e1e482842ea261e</a> "[【ABAP版】生成顺丰接口签名功能函数 v1.0.zip")
⑥.[【nodejs版】小程序生成签名云函数.zip](<a href="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=209109aee81a15708068831bd7302c3d">https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=209109aee81a15708068831bd7302c3d</a> "[小程序生成签名云函数.zip")
⑦.[【Golang】验签请求方demo.zip](<a href="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=252aa99b0102a34d70c81850b173ea2b">https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=252aa99b0102a34d70c81850b173ea2b</a> "[【Golang】验签请求方demo.zip")
注:因签名有效期为3分钟,故每次请求需获取当前时间戳;</p>
</li>
<li><code>接收方(适用于接收推送类接口,如路由推送接口。无对接推送类需求可忽略以下步骤)</code>
注:接收方可自己实现接收验签请求,可以参考“请求方.①”中接收请求及验签的方法。</li>
<li><code>签名结构: sign = base64(sha512(body+SK+timestamp))</code></li>
<li><code>接收验签逻辑:</code>
①.从请求Header中获取请求方APPID、请求方时间戳、请求方签名;
②.校验签名是否过期;
③.根据请求方参数、分配SK、请求方时间戳 生成签名;
④.对比生成的签名和请求方签名是否一致;</li>
</ul>