以下讨论的是和微信支付 沙箱 密钥相关的微信支付平台错误:获取沙箱密钥失败,确保交易密钥是否正确 的解决方法排坑 教程文章,内容是本站精心挑选整理的教程,希望对广大的网友给到帮助,下面是详细内容:
首页调试好各种支付参数后,进入到沙箱验证环节。这个环节首先必须要有一个准入证,也就是沙箱密钥。按官网的提示如下:
请求Url | https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey |
---|---|
是否需要证书 | 否 |
请求方式 | POST |
字段名 | 字段 | 必填 | 示例值 | 类型 | 说明 |
---|---|---|---|---|---|
商户号 | mch_id | 是 | 1305638280 | String(32) | 微信支付分配的微信商户号 |
随机字符串 | nonce_str | 是 | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | String(32) | 随机字符串,不长于32位 |
签名 | sign | 是 | 5K8264ILTKCH16CQ2502SI8ZNMTM67VS | String(32) | 签名值 |
字段名 | 字段 | 必填 | 示例值 | 类型 | 说明 |
---|---|---|---|---|---|
返回状态码 | return_code | 是 | SUCCESS | String(16) | SUCCESS/FAIL 此字段是通信标识,非交易标识 |
返回信息 | return_msg | 否 | 签名失败 | String(128) | 返回信息,如非空,为错误原因 ,签名失败 ,参数格式校验错误 |
以下字段在return_code 为SUCCESS的时有返回。
字段名 | 字段 | 必填 | 示例值 | 类型 | 说明 |
---|---|---|---|---|---|
商户号 | mch_id | 是 | 1305638280 | String(32) | 微信支付分配的微信商户号 |
沙箱密钥 | sandbox_signkey | 否 | 013467007045764 | String(32) | 返回的沙箱密钥 |
POST数据过去以后,是完全行不通的。
下面我们一步步来通俗的讲解这个步骤吧!
首先,我们得准备以下信息:
1、商户号(数字)
2、商户号的32位密钥
3、随机字符串(随便键盘打一串32个以下的字符,如:alixixi38sdf0sdk23fs)
4、32位的MD5加密工具,网址(生成32位并转换大写): http://tool.alixixi.com/md5/
5、官方验校工具:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=20_1
准备好这4样信息后,按着我的步骤,一定会100%成功获得密钥的!
第一步: 编写sign签名的明文串:
mch_id=1*********&nonce_str=alixixi38sdf0sdk23fs&key=6E*************
这里有必须给菜鸟说明一下mch_id=后面填写商户号,nonce_str=后面填写随便写的随机字符串,key=这个就是你的商户号后台的密钥,编好上面的字符串以后,接下一步。
第二步:把第一步编写的明文字符串进行32位的MD5加密(这里要注意如果您自行加密请使用原生的MD5加密码文件),打开32位的MD5加密工具网址 http://tool.alixixi.com/md5/
把第一步编写的明文串粘贴到工具网址的输入框,进行加密生成32位的MD5值,这个就是你正确的sign值,下一步会用到。
第三步:打开官方校验工具网址(不支持IE浏览器):https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=20_1
如下图:
这一步必须要注册我上面红线框选的内容!!!选MD5加密,自定义参数(如果你玩的是SHA256自行改变),自定义参数里填写必要的参数值,在这里官方挖坑文档并没有提示需要keyBS一下。按上面填写完成后,点击生成签名,在最下方的显示最终提交的XML就是我们想要的XML数据,把这个XML数据POST到微信支付平台沙箱密钥的请求网址就可以了,网址是:https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey
重要的一点,在这里生成的XML里,必须把上图黄色线多出来的一个sign那一行值删除去掉再提交POST。
第四步:进行POST提交刚才生成的XML数据,微信平台将返回正确的沙箱密钥。可以在一些在线POST提交工具网址进行操作,如打开:http://coolaf.com/ 把刚才那份XML提交到https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey网址就可以了。
会返回类似:
这样成功的信息,sandbox_signkey里面就是你想要的沙箱密钥了。
是不是很简单!!!
本文系阿里西西站长原创,转载请注明出处,否则网友位一起BS随意转载又不留落笔的站长,哈哈。
希望本文能帮到您!
关于微信支付平台错误:获取沙箱密钥失败,确保交易密钥是否正确 的解决方法排坑的内容写到这里就结束啦,您可以收藏本页网址http://www.alixixi.com/biancheng/
a/2019030598591.shtml方便下次再访问哦。