美文网首页
微信公众号支付

微信公众号支付

作者: 半打真心 | 来源:发表于2018-09-26 20:29 被阅读0次
青年普朗克

    微信支付的文档和SDK容易带新人入坑,作为坑中的过来人写点爬坑经验吧。

    之前做过很多次公众号支付,但是基本都是用的封装好的代码,今天用的虽然也是鹅厂给你封装好的SDK,但是二次封装也是封装。我们一步一步来做一遍公众号支付的开发。

(一)下载SDK

    https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_1呐,就是这里。值得说的是我这时候下的sdk跟以前的版本不一样,似乎鹅厂工程师为了攀附‘高大上’用了接口的方式重写了一遍,但其实更不好用了好吧!!

    这个SDK要根据自己的需要重新整合一下,如果只是为了公众号支付我建议保留的文件是这些:lib文件下的所有文件,log.php我暂时不知道干嘛的,就省去了。然后就保留example里的WxPay.config.php和WxPay.JsApiPay.php这两个文件。

(二)商户配置

    首先你得有公众号,而且公众号 申请了开发者模式,也就是有appid和appsecret这两个参数,同时白名单呀、js安全域名、网页授权域名什么的也要配置好,否则到时候是用不了的。然后就是申请微信支付的商户号和秘钥,再进行支付授权目录设置。这些一大串东西设置好了上面的代码就能用了!

(三)重写SDK

    虽然说是重写,其实也就是稍微修改一下。我们在TP5的环境下,把(一)中的放到一个自定义的文件夹下面,我起名字叫wxpay。

    然后把wxpay文件夹放到vendor目录下。我在控制器里新加了一个wechat模块,写了一个 统一下单的控制器叫Unifiedorder.php。

    我们主要做的就是根据dmeo中的jsapi.php进行‘改装’。php部分如下



我们把它改装成tp5的类


注意这里的PAY_PATH是在public下的index.php里定义的

而且需要注意的是,引入这个常量之后,所有的引入路径都要加上这个常量

    另外注意的是,新建对象的时候tp5要加上反斜杠\,这个一定要记得!!!

    接下来就是写配置,也就是WxPay.Config.php里GetAppId、GetMerchantId、GetKey、GetAppSecret里的参数,它的这种方式是写死的。这是这个sdk非常失败的一点,我们的微信配置一般都是存在数据库或者文件里,我们可以改装动态读取数据配置,这里就不改了,因为这样也能用。

    然后就是GetSSLCertPath函数里要写上证书的路径。接着在WxPay.JsApiPay.php中GetOpenid方法里的回调地址要按实际情况改了,这个回调地址一定要是网页登录授权的域名下的,否则会出错。

    需要注意的是公众号id和商户号id必须是对应的,不能用a商家的公众和和b商家的商户号对应,它两也配不上。

    最后Unifiedorder.php里写上具体的订单信息和金额数量,把前端复制到对应的渲染页面里就可以用了。


到这里基本的支付流程就跑通了,然后就是调试回调地址里的接口,这个暂时不说。

相关文章

  • PHP微信公众号支付开发总结

    微信公众号开发是很常见的开发,其中微信支付占有很大的比重。微信公众号分为服务号和订阅号,服务号支持微信支付。 前期...

  • 关注公众号领红包常见问题解答

    一、关注领红包对公众号的要求: 公众号必须开通“微信支付”和“现金红包”功能权限 登录微信公众平台 – 微信支付(...

  • 微信公众号配置

    微信支付 - 商户平台 商户号 支付证书 微信公众号 appid & appscret 开发 > 基本配置 > ...

  • 【微信】支付

    公众号支付 调用微信js支付接口的页面,必须接口域名授权。在公众平台中设置,最多可以授权3个。 使用微信公众号支付...

  • 关于微信公众号发红包|应该知道的几种玩法

    微信公众号发红包首先必须是开通微信支付了的公众号,支持开通微信支付的公众号类型包括:服务号和主体为政府或媒体资质的...

  • 微信支付

    公众号支付是指在微信app中访问的页面通过js直接调起微信支付; 一:设置域名 登录微信公众平台; 微信支付中设置...

  • 微信公众号网页支付summer版

    该文仅对于中间这种支付方式有参考价值哟 一、开发背景 在微信公众号中,需要进行微信支付且为微信公众号网页支付。 二...

  • 商城商品微信支付

    本次我们主要介绍的是公众号支付 1.当我们自己有微信公众号,开通了微信支付业务 2.我们到微信支付的官网,http...

  • 2019-08-19

    blog在线点单备案图标微信公众号微信支付微信赞赏支付宝出行红包支付宝支付支付宝红包

  • 微信支付

    微信公众号支付分为三类 以下主要介绍公众号H5授权支付 首先看一下微信支付的业务逻辑 大部分微信支付逻辑在于服务器...

网友评论

      本文标题:微信公众号支付

      本文链接:https://www.haomeiwen.com/subject/oadjoftx.html