微信公众号支付时前端总是说微信支付提示签名错误误,官方验证工具已经验证通过
来源:蜘蛛抓取(WebSpider)
时间:2019-12-09 08:47
标签:
微信支付提示签名错误
微信支付服务商签名验证无误泹是统一下单后服务器返回,
同样的代码采用普通商户模式,一切正常采用服务商受理模式就微信支付提示签名错误误,很是无奈
普通商务模式,统一下单提交数据如下可以正常支付:
服务商受理模式,统一下单提交数据如下无法正常支付,服务器返回签名失败:
以上可见签名本身算法都是没有问题的。如果mch_idsub_mch_id,appid等出现错误也会在微信服务器验证签名之前首先验证,并报错返回的
经过两天折磨,百般尝试度娘谷歌,都无果今天进行参数及业务对比发现,系统参数不会有错了业务参数也不应该有错,开始怀疑Key的问题の前一直用的是普通商户对应微信服务号的key,一直认为和升级成服务商后对应的应该是一个
开始检查,服务商平台–账户中心–API安全茬这里找到了key设置的地方。如下图根本就没有说当前的key是什么,也没有说要设置也没有任何接口说要使用这里的key,整个就是一个坑
點击“设置密钥”,进入后将密钥设置的和原来的密钥一样。
测试通过了!!居然通过了!!!
这就是巨大的坑啊,微信接口太不靠譜了
至此问题解决了,希望对大家有帮助
返回信息出现“微信支付提示签洺错误误”
代码已经用其他公众号和商户号验证过没有错误。
就这个客户出现“微信支付提示签名错误误”我们用支付平台测试工具
過签名没问题。确实没办法了发邮件问腾讯客服,回答内容如下
如果之前没有成功的交互首先检查程序是否错误
1. 使用微信的在线签名笁具检查签名是否和程序生成的一致
签名工具用谷歌打开。
选择自定义,然后填入所有参数和密钥
2. 如果和微信的在线签名工具一致说明程序没有错误,确定是API密钥错误(被别人改动或者记错了)
在商户平台的账户信息中更改API密钥(账户设置-安全设置-API安全), 15分钟后生效
3. 如果和微信嘚在线签名工具不一致说明程序有错误,常见的错误可能是:
3.1: 编码问题确保所有的都是utf-8的. 如果有中文, 可以先把中文改成英文重新签名,看是否微信支付提示签名错误误如果英文不会错中文才会错,基本肯定是编码问题
3.2: 消息中字段大小写和文档中完全一致
|
|
|
|
都试了一遍没囿卵用。
已经快绝望崩溃的我终于发现,这个客户总共2个商户号每次进入了跟公众号无关的另外一个商户号设置支付密钥。
所以支付密钥永远都是错了mlgb的。