注册 | 登陆
您的位置:阿里西西 > 编程技术 > 手机APP编程 > 详细内容

微信支付平台错误:获取沙箱密钥失败,确保交易密钥是否正确 的解决方法排坑

  稿源:互联网   2019-03-05 15:17:02   点击:   撤稿纠错
按官方提示进行获取沙箱密钥的时候,久试不爽,总是提示错误 :“获取沙箱密钥失败,确保交易密钥是否正确”。这个纯粹是微信平台挖的坑呀,文档没有详细的进行一些讲解,也没有提示需要key,下面来说说流程。

以下讨论的是和微信支付 沙箱 密钥相关的微信支付平台错误:获取沙箱密钥失败,确保交易密钥是否正确 的解决方法排坑 教程文章,内容是本站精心挑选整理的教程,希望对广大的网友给到帮助,下面是详细内容:

首页调试好各种支付参数后,进入到沙箱验证环节。这个环节首先必须要有一个准入证,也就是沙箱密钥。按官网的提示如下:

获取验签秘钥API:
请求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方便下次再访问哦。