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


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 相关文章推荐
javascript 限制输入和粘贴(IE,firefox测试通过)
Nov 14 Javascript
用jquery模仿的a的title属性(兼容ie6/7)
Jan 21 Javascript
Js动态添加复选框Checkbox的实例方法
Apr 08 Javascript
innerHTML属性,outerHTML属性,textContent属性,innerText属性区别详解
Mar 13 Javascript
JavaScript检测鼠标移动方向的方法
May 22 Javascript
clipboard.js无需Flash无需依赖任何JS库实现文本复制与剪切
Oct 10 Javascript
AngularJS实现Model缓存的方式
Feb 03 Javascript
AngularJS实现与Java Web服务器交互操作示例【附demo源码下载】
Nov 02 Javascript
通过修改360抢票的刷新频率和突破8车次限制实现方法
Jan 04 Javascript
javascript与PHP动态往类中添加方法对比
Mar 21 Javascript
vue 开发一个按钮组件的示例代码
Mar 27 Javascript
vue实现同一个页面可以有多个router-view的方法
Sep 20 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笔记之常用文件操作
2010/10/12 PHP
PHP常用特殊运算符号和函数总结(php新手入门必看)
2013/02/02 PHP
php解析html类库simple_html_dom(详细介绍)
2013/07/05 PHP
php采用file_get_contents代替使用curl实例
2014/11/07 PHP
两种php去除二维数组的重复项方法
2015/11/04 PHP
PHP 下载文件时如何自动添加bom头及解释BOM头和去掉bom头的方法
2016/01/04 PHP
PHP封装的page分页类定义与用法完整示例
2018/12/24 PHP
ExtJS下grid的一些属性说明
2009/12/13 Javascript
js+css实现的简单易用兼容好的分页
2013/12/30 Javascript
JS遍历数组和对象的区别及递归遍历对象、数组、属性的方法详解
2016/06/14 Javascript
seajs中模块依赖的加载处理实例分析
2017/10/10 Javascript
JavaScript检查数据中是否存在相同的元素(两种方法)
2018/10/07 Javascript
js继承的这6种方式!(上)
2019/04/23 Javascript
webpack项目使用eslint建立代码规范实现
2019/05/16 Javascript
小程序使用watch监听数据变化的方法详解
2019/09/20 Javascript
JS实现商城秒杀倒计时功能(动态设置秒杀时间)
2019/12/12 Javascript
js 函数性能比较方法
2020/08/24 Javascript
python函数的5种参数详解
2017/02/24 Python
Python实现的随机森林算法与简单总结
2018/01/30 Python
django的登录注册系统的示例代码
2018/05/14 Python
将Dataframe数据转化为ndarry数据的方法
2018/06/28 Python
pyshp创建shp点文件的方法
2018/12/31 Python
Python提取支付宝和微信支付二维码的示例代码
2019/02/15 Python
对python中的os.getpid()和os.fork()函数详解
2019/08/08 Python
python如何爬取网页中的文字
2020/07/28 Python
python实现经典排序算法的示例代码
2021/02/07 Python
is_file和file_exists效率比较
2021/03/14 PHP
制定岗位职责的原则
2013/11/08 职场文书
银行实习的自我鉴定
2013/12/10 职场文书
董事长助理工作职责
2014/06/08 职场文书
2014年教师节寄语
2014/08/11 职场文书
大学生考试作弊被抓检讨书
2014/12/27 职场文书
中秋联欢会主持词
2015/07/04 职场文书
2016情人节宣传语
2015/07/14 职场文书
大学生奶茶店创业计划书
2019/06/25 职场文书
MySQL 全文索引使用指南
2021/05/25 MySQL