关于fast官方微信支付宝整合插件的使用反馈

2019年02月15日 715 次阅读 4 条评论 3 人点赞

在使用fast官方微信支付宝整合插件的时候遇到了一些小坑,这里整理了一下分享给大家,官方插件所用sdk来之yansongda,有些问题基本可以在文档里找到。这次官方插件更新了PC端扫描二维码支付,也整好是我这次选择用它的原因。

这次整理的问题主要是发生在调用PC端扫码时遇到的验签失败、return_url参数未定义以及支付成功后的返回方法验签失败。如果您遇到其他问题欢迎评论回复,我会及时帮你排查原因!

  1. 发起支付报签名错误,代码坐标 addons/epay/controller/Api.php,微信支付扫码支付方法wechat中的验签;
    if ($sign != md5(implode('', $data) . $config['appid'])) {
                $this->error("签名不正确");
    }
    这里先看插件的配置图

    配置时提示了appid为APP的appid,我是真的没搞明白APP的appid是哪个id,所以起初 appid 并没有配置,仅仅配置了 app_id,mch_id,key 等信息。
    所以在请求调支付方法的时候,一直提示验签失败,经过排查发现 $sign != md5(implode('', $data) . $config['appid']) 验签的方法中 $config['appid'] config调用的 appid,这下懵逼了。。。难道不应该调用app_id嘛~~ 我并没有改动验签方法中的代码,而是把配置项的 appid 也配置成了公众号的appid。此时验签通过!

  2. 调用PC端支付时报 未定义的字段  “return_url” 错误,在插件配置中,微信项目并未配置return_url,所以这里就需要自己定义了。其实在插件的Index控制器中已经找到了解决办法,就是在定义发起支付的参数中定义return_url ,参考一下即可。

  3. 支付成功,支付成功的返回方法一直验签失败。其实这里参考官方插件的Index方法即可。这里发生的问题应该是订单编号没有传过来

官方给的代码仅作为参考,一些逻辑还需要自己处理和实现,由于我这里用到的是PC端扫码支付,所以其他问题并未发现,如果您有其他问题欢迎提交留言!如果您认为对您有帮助,可分享到论坛去喔!!!

讲梦想、讲奋斗可以,前提是钱要给够。

文章评论(4

  • 阳阳博主

    官方这个插件最新版本或许已经修复了这个问题!所有大家在使用时请须知~~

    #32019-04-29 17:43
  • diqishiLv 2

    那fastadmin用的论坛搜索真的太不友好

    #22019-02-15 15:53
  • diqishiLv 2

    老大,你们公司也用fastadmin开发吗?

    #12019-02-15 15:52
    • 阳阳博主

      @diqishi是的,后台基于fastadmin

      2019-02-15 15:53
  • 接收回复邮件通知
    非注册会员初次评论需要审核,审核时间(09:00-18:00),请耐心等待...