最近在做微信支付,调用微信的统一下单支付接口http://mch.weixin.qq.com/wiki/doc/api/jsapi.php"htmlcode">
<xml><return_code><![CDATA[FAIL]]></return_code> <return_msg><![CDATA[签名错误]]></return_msg> </xml>
POST给微信的xml内容:
<xml> <appid><![CDATA[wxe587fed28211bccb]]></appid> <body><![CDATA[Demo]]></body> <device_info><![CDATA[WEB]]></device_info> <fee_type><![CDATA[CNY]]></fee_type> <mch_id><![CDATA[1265056801]]></mch_id> <nonce_str><![CDATA[ejnshgum39igp6qwpvzwb5jbwk8yigqz]]></nonce_str> <notify_url><![CDATA[http://testpay.le1.com.cn/wechat/notify.htm]]></notify_url> <openid><![CDATA[opZb3wsfU6RUZGxgFZ6OXVbdVxcU]]></openid> <out_trade_no><![CDATA[1002_09745565EpuxTunUCD0AA72E]]></out_trade_no> <product_id><![CDATA[QWE789C1523QWE78]]></product_id> <sign><![CDATA[BF4BB39FFAFC4DF470C5A3F7784678BD]]></sign> <spbill_create_ip><![CDATA[172.16.12.171]]></spbill_create_ip> <total_fee><![CDATA[1]]></total_fee> <trade_type><![CDATA[NATIVE]]></trade_type> </xml>
首先 , 看到返回msg显示签名错误 , 第一反应官网提供的路径去生成了一下签名做比较 , 结果发现签名算法是没错的.
https://pay.weixin.qq.com/wiki/tools/signverify/
找了各种方法 , 百度谷歌搜索了一下午 , 发现很多同行都遇到了一样的问题 , 得到了以下解决方法
1、确认公众号的appSecret和商户号的API密钥没有搞混。
2、重置商户API密钥。(本人亲测是这样解决了问题,tx真是个坑,我严重鄙视。)
3、确认公众号授权的域名和目录是正确的。
4、参数body含有中文字符,改换英文签名成功,那么就转换字符编码试试。
$dat = iconv('UTF-8','ISO8859-1',array2xml($package));
然而 , 并没有解决问题 , 先吐槽一下微信支付这个巨坑 , 不是说它的api水平有多烂,但你至少说明白一点啊,每次看微信api都头痛。比阿里差的不是一个数量级的。调阿里api都是,优雅、简单、舒服,效率高。调微信api的感觉是,愤怒、头痛、恶心,想打人。
后续问题解决后会在该随笔追加解决方案 .
追加: 问题已解决 , 重置了三次商户密钥.(....................)
在解决过程中又发现了一个较大的坑 , 在二维码支付模式中 , 本来的设计是生成二维码之后展示到页面上让用户去长按识别来支付 , 但是今天发现微信关闭了这个功能 , 只能是用另外一台手机去扫码支付 .
由于用户体验及其不好 , 后改用公众号支付模式 .
总结
以上所述是小编给大家介绍的微信支付--签名错误问题的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。