搞了半天,网上好多都说是触发支付函数要在前面加上javascript:+你自己调起支付的函数()+return false
可我是直接在js中拿到后台返回的数据后由js直接触发的,没法这么搞
随后我尝试吧alert换成window.location.href = "http://www.baidu.com"
结果支付完,点击完成就直接跳转到百度了,,,
原来不是回调不执行,而是alert没出来啊,害我一通瞎忙活,也不知道为什么alert在手机上看不到效果,我用的iphone,不知道安卓机能看到alert不能
可以建议你,把发送给微信服务器统一下单的参数包与你js调起微信支付所发送的参数包对比一下,大小写也看看,肯定哪里出问题了,我以前接微信支付的时候,遇到很多问题,后来查看下来,基本上都是自己这边不对。根据官方微信支付的 文档
和流程图
支付过程可以分为 后端流程 和 前端流程
根据经验 签名错误是xml的加密出错了
这里贴出一个提交统一下单的原始xml
这里说明一下: 经过亲测 spbill_create_ip , notify_url 这两个参数即使是写死的也不是导致 签名错误 的原因
检查商户信息,也就是商户号 mch_id 和商户的 key (这里需要注意 key ,是申请微信支付成功后,腾讯发给申请者邮件里面的秘钥,要想此秘钥生效还需要安装 操作证书 )