微信小程序微信支付接入开发实例详解


Posted in Javascript onApril 12, 2017

本文主要讲述微信小程序接入微信支付开发过程中遇到的坑,分为两大块,小程序端和后台接口封装。本文主要内容如下:

一、后台接口封装;

二、小程序端整合;

三、总结

一、后台接口封装

本文介绍基于ThinkPHP5进行接口封装,具体步骤如下:

1、微信支付官方文档提供了PHP脚本微信支付的样例,下载下来;

2、样例已经封装好了每个类,我们只需要加上命名空间即可,在TP5的extend目录下新建一个目录wxpay,把样例中的类复制到该目录下,然后加上命名空间即可;

微信小程序微信支付接入开发实例详解

样例改造结果

其中最主要的一个类即WxPayApi.php,加上命名空间后的形式如下,其它类的改造类似:

微信小程序微信支付接入开发实例详解

3、在需要用到的地方引入命名空间,new 一个对象即可使用,统一下单接口举例:

先引入需要的类:

微信小程序微信支付接入开发实例详解

封装对外的统一下单接口,直接返回小程序调用支付接口所需的参数:

微信小程序微信支付接入开发实例详解

重新支付接口类似,可以通过统一下单类进行封装。

二、小程序端整合

小程序端很简单,只需要把接口返回的数据传给微信支付的js接口即可

接口返回的样例如下:

微信小程序微信支付接入开发实例详解

整合接口返回的数据举例如下:

微信小程序微信支付接入开发实例详解

三、总结

1、小程序微信支付API使用的公众号jssdk的微信支付API,官方文档上有一个参数写错了,就是传的appid中的“I ”必须为大写,不然一直提示参数错误。在这个上面调试好久,希望看到的小伙伴注意下。

2、调用统一下单接口后,不能直接把统一下单返回的结果返回给小程序端,需要重新生成下签名。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
Gird组件 Part-3:范例RSSFeed Viewer
Mar 10 Javascript
Javascript公共脚本库系列(一): 弹出层脚本
Feb 24 Javascript
jQuery 图片切换插件(代码比较少)
May 07 Javascript
javaScript实现浮点数转十六进制字符
Oct 29 Javascript
javascript感应鼠标图片透明度显示的方法
Feb 24 Javascript
jQuery Html控件基本操作(日常收集整理)
Mar 11 Javascript
AngularJS 中使用Swiper制作滚动图不能滑动的解决方法
Nov 15 Javascript
vue-router 权限控制的示例代码
Sep 21 Javascript
vue获取dom元素注意事项
Dec 28 Javascript
jQuery实现使用sort方法对json数据排序的方法
Apr 17 jQuery
d3.js实现自定义多y轴折线图的示例代码
May 30 Javascript
vue封装数字翻牌器
Apr 20 Vue.js
JavaScript数据结构之广义表的定义与表示方法详解
Apr 12 #Javascript
JavaScript数据结构之数组的表示方法示例
Apr 12 #Javascript
easyui-edatagrid.js实现回车键结束编辑功能的实例
Apr 12 #Javascript
Vue生命周期示例详解
Apr 12 #Javascript
easyui关于validatebox实现多重规则验证的方法(必看)
Apr 12 #Javascript
easyui-datagrid特殊字符不能显示的处理方法
Apr 12 #Javascript
JavaScript数据结构中串的表示与应用实例
Apr 12 #Javascript
You might like
PHP+MYSQL的文章管理系统(一)
2006/10/09 PHP
超级好用的一个php上传图片类(随机名,缩略图,加水印)
2010/06/30 PHP
php处理json时中文问题的解决方法
2011/04/12 PHP
laravel 5 实现模板主题功能
2015/03/02 PHP
php实现可运算的验证码
2015/11/10 PHP
php的laravel框架快速集成微信登录的方法
2016/12/12 PHP
通过Mootools 1.2来操纵HTML DOM元素
2009/09/15 Javascript
Jquery在IE7下无法使用 $.ajax解决方法
2009/11/11 Javascript
基于JQuery的一句代码实现表格的简单筛选
2010/07/26 Javascript
js substr、substring和slice使用说明小记
2011/09/15 Javascript
js循环改变div颜色具体方法
2013/06/25 Javascript
javascript(js)的小数点乘法除法问题详解
2014/03/07 Javascript
node.js实现多图片上传实例
2014/06/03 Javascript
NodeJs读取JSON文件格式化时的注意事项
2016/09/25 NodeJs
JavaScript常用正则验证函数实例小结【年龄,数字,Email,手机,URL,日期等】
2017/01/23 Javascript
vue设计一个倒计时秒杀的组件详解
2019/04/06 Javascript
Python中map,reduce,filter和sorted函数的使用方法
2015/08/17 Python
Python 2与Python 3版本和编码的对比
2017/02/14 Python
python对离散变量的one-hot编码方法
2018/07/11 Python
Python 70行代码实现简单算式计算器解析
2019/08/30 Python
python 消除 futureWarning问题的解决
2019/12/25 Python
如何更改 pandas dataframe 中两列的位置
2019/12/27 Python
tensorflow实现tensor中满足某一条件的数值取出组成新的tensor
2020/01/04 Python
Python中的整除和取模实例
2020/06/03 Python
Canvas 帧动画吃苹果小游戏
2020/08/05 HTML / CSS
韩国CJ食品专卖网:CJonmart
2016/09/11 全球购物
Mansur Gavriel官网:纽约市的一个设计品牌
2019/05/02 全球购物
垃圾回收的优点和原理
2014/05/16 面试题
Unix如何添加新的用户
2014/08/20 面试题
高一数学教学反思
2014/02/07 职场文书
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
2014世界杯球队球队口号
2014/06/05 职场文书
党员违纪检讨书
2015/05/05 职场文书
文艺部部长竞选稿
2015/11/21 职场文书
vue+elementui 实现新增和修改共用一个弹框的完整代码
2021/06/08 Vue.js
vue二维数组循环嵌套方式 循环数组、循环嵌套数组
2022/04/24 Vue.js