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


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 相关文章推荐
学习ExtJS Panel常用方法
Oct 07 Javascript
jQuery中读取json文件示例代码
May 10 Javascript
Jquery ajax基础教程
Nov 20 Javascript
jquery实现简单Tab切换菜单效果
Jul 17 Javascript
jquery插入兄弟节点的操作方法
Dec 07 Javascript
JavaScript严格模式详解
Jan 16 Javascript
Js利用Canvas实现图片压缩功能
Sep 13 Javascript
ionic选择多张图片上传的示例代码
Oct 10 Javascript
200行HTML+JavaScript实现年会抽奖程序
Jan 22 Javascript
ES7之Async/await的使用详解
Mar 28 Javascript
JavaScript 双向链表操作实例分析【创建、增加、查找、删除等】
Apr 28 Javascript
vue项目,代码提交至码云,iconfont的用法说明
Jul 30 Javascript
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 一元分词算法
2009/11/30 PHP
PHP函数超时处理方法
2016/02/14 PHP
详解WordPress中添加友情链接的方法
2016/05/21 PHP
php 人员权限管理(RBAC)实例(推荐)
2017/05/24 PHP
thinkphp5.0自定义验证规则使用方法
2017/11/16 PHP
php字符串过滤strip_tags()函数用法实例分析
2019/06/24 PHP
php tpl模板引擎定义与使用示例
2019/08/09 PHP
php的单例模式及应用场景详解
2021/02/27 PHP
javascript数组使用调用方法汇总
2007/12/08 Javascript
跟着JQuery API学Jquery 之三 筛选
2010/04/09 Javascript
初窥JQuery(一)jquery选择符 必备知识点
2010/11/25 Javascript
jquery判断元素的子元素是否存在的示例代码
2014/02/04 Javascript
jQuery判断div随滚动条滚动到一定位置后停止
2014/04/02 Javascript
Nodejs实现的一个简单udp广播服务器、客户端
2014/09/25 NodeJs
在Js页面通过POST传递参数跳转到新页面详解
2017/08/25 Javascript
vue实现图书管理demo详解
2017/10/17 Javascript
微信小程序签到功能
2018/10/31 Javascript
在webstorm开发微信小程序之使用阿里自定义字体图标的方法
2018/11/15 Javascript
jQuery无冲突模式详解
2019/01/17 jQuery
微信小程序后端(java)开发流程的详细步骤
2019/11/13 Javascript
Vue.js仿Select下拉框效果
2020/02/18 Javascript
基于原生js实现判断元素是否有指定class名
2020/07/11 Javascript
jquery轮播图插件使用方法详解
2020/07/31 jQuery
[01:46]辉夜杯—打造中国DOTA新格局
2015/12/25 DOTA
pyqt4教程之实现windows窗口小示例分享
2014/03/07 Python
简单介绍Python中的len()函数的使用
2015/04/07 Python
从局部变量和全局变量开始全面解析Python中变量的作用域
2016/06/16 Python
Python决策树之基于信息增益的特征选择示例
2018/06/25 Python
selenium + python 获取table数据的示例讲解
2018/10/13 Python
Java多线程实现四种方式原理详解
2020/06/02 Python
校领导推荐信
2013/11/01 职场文书
《梅兰芳学艺》教学反思
2014/02/24 职场文书
《分一分》教学反思
2014/04/13 职场文书
硕士生找工作求职信
2014/07/05 职场文书
解除施工合同协议书
2014/10/17 职场文书
2014小学教师年度考核工作总结
2014/12/03 职场文书