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


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_03_javascript全局观
Oct 11 Javascript
div浮层,滚动条移动,位置保持不变的4种方法汇总
Dec 11 Javascript
Node.js中使用事件发射器模式实现事件绑定详解
Aug 15 Javascript
JS数组的常见用法实例
Feb 10 Javascript
JavaScript中数组Array.sort()排序方法详解
Mar 01 Javascript
JavaScript学习笔记之惰性函数示例详解
Aug 27 Javascript
vue中当图片地址无效的时候,显示默认图片的方法
Sep 18 Javascript
angularJs中$scope数据序列化的实例
Sep 30 Javascript
express express-session的使用小结
Dec 12 Javascript
jquery无缝图片轮播组件封装
Nov 25 jQuery
微信小程序基于canvas渐变实现的彩虹效果示例
May 03 Javascript
vue实现购物车结算功能
Jun 18 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脚本的10个技巧(8)
2006/10/09 PHP
收集的PHP中与数组相关的函数
2007/03/22 PHP
让PHP COOKIE立即生效,不用刷新就可以使用
2011/03/09 PHP
什么情况下可以不写PHP的闭合标签“?>”
2014/08/28 PHP
php树型类实例
2014/12/05 PHP
PHP实现的方程求解示例分析
2016/11/11 PHP
HR vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
Extjs学习笔记之八 继承和事件基础
2010/01/08 Javascript
jQuery find和children方法使用
2011/01/31 Javascript
JQuery 获取json数据$.getJSON方法的实例代码
2013/08/02 Javascript
JavaScript window.location对象
2014/11/14 Javascript
jQuery无刷新上传之uploadify3.1简单使用
2016/06/18 Javascript
Jquery组件easyUi实现表单验证示例
2016/08/23 Javascript
Bootstrap使用基础教程详解
2016/09/05 Javascript
AngularJs导出数据到Excel的示例代码
2017/08/11 Javascript
vue2.0与bootstrap3实现列表分页效果
2017/11/28 Javascript
微信小程序上传图片功能(附后端代码)
2020/06/19 Javascript
vue实现页面滚动到底部刷新
2019/08/16 Javascript
Vue防止白屏添加首屏动画的实例
2019/10/31 Javascript
基于Vant UI框架实现时间段选择器
2020/12/24 Javascript
[06:24]DOTA2 2015国际邀请赛中国区预选赛第二日TOP10
2015/05/27 DOTA
python中wx将图标显示在右下角的脚本代码
2013/03/08 Python
Ubuntu16.04/树莓派Python3+opencv配置教程(分享)
2018/04/02 Python
caffe binaryproto 与 npy相互转换的实例讲解
2018/07/09 Python
python用列表生成式写嵌套循环的方法
2018/11/08 Python
Python-ElasticSearch搜索查询的讲解
2019/02/25 Python
Django+Xadmin构建项目的方法步骤
2019/03/06 Python
Python如何筛选序列中的元素的方法实现
2019/07/15 Python
HTML5标签使用方法详解
2015/11/27 HTML / CSS
Urban Outfitters英国官网:美国平价服饰品牌
2016/11/25 全球购物
Cotton On南非:澳洲时尚平价品牌
2018/06/28 全球购物
小孩百日宴答谢词
2014/01/15 职场文书
2014年残联工作总结
2014/11/21 职场文书
个人工作表现自我评价
2015/03/06 职场文书
工程技术员岗位职责
2015/04/11 职场文书
Python中json.load()和json.loads()有哪些区别
2021/06/07 Python