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


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知识点收藏
Feb 22 Javascript
jquery实现的下拉和收缩效果示例
Aug 21 Javascript
深入分析jquery解析json数据
Dec 09 Javascript
JavaScript操作XML/HTML比较常用的对象属性集锦
Oct 30 Javascript
IE8 内存泄露(内存一直增长 )的原因及解决办法
Apr 06 Javascript
jQuery中layer分页器的使用
Mar 13 Javascript
vuex中的 mapState,mapGetters,mapActions,mapMutations 的使用
Apr 13 Javascript
Vue模拟数据,实现路由进入商品详情页面的示例
Aug 31 Javascript
Vue和React组件之间的传值方式详解
Jan 31 Javascript
Vue插槽原理与用法详解
Mar 05 Javascript
vue实现分环境打包步骤(给不同的环境配置相对应的打包命令)
Jun 04 Javascript
layui 上传插件 带预览 非自动上传功能的实例(非常实用)
Sep 23 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
详解如何实现Laravel的服务容器的方法示例
2019/04/15 PHP
javascript在事件监听方面的兼容性小结
2010/04/07 Javascript
由JavaScript技术实现的web小游戏(不含网游)
2010/06/12 Javascript
javascript学习笔记(二) js一些基本概念
2012/06/18 Javascript
各种常用的JS函数整理
2013/10/25 Javascript
JS实现兼容各浏览器解析XML文档数据的方法
2015/06/01 Javascript
JS和jQuery使用submit方法无法提交表单的原因分析及解决办法
2016/05/17 Javascript
JavaScript仿淘宝页面图片滚动加载及刷新回顶部的方法解析
2016/05/24 Javascript
Jquery on绑定的事件 触发多次实例代码
2016/12/08 Javascript
EsLint入门学习教程
2017/02/17 Javascript
JS数组去重常用方法实例小结【4种方法】
2018/05/28 Javascript
原生js实现可兼容PC和移动端的拖动滑块功能详解【测试可用】
2019/08/15 Javascript
原生JavaScript实现幻灯片效果
2021/02/19 Javascript
python实现探测socket和web服务示例
2014/03/28 Python
python实现模拟按键,自动翻页看u17漫画
2015/03/17 Python
在Python中marshal对象序列化的相关知识
2015/07/01 Python
详解用TensorFlow实现逻辑回归算法
2018/05/02 Python
Flask之请求钩子的实现
2018/12/23 Python
python 获取页面表格数据存放到csv中的方法
2018/12/26 Python
python3调用windows dos命令的例子
2019/08/14 Python
Python列表原理与用法详解【创建、元素增加、删除、访问、计数、切片、遍历等】
2019/10/30 Python
Django 简单实现分页与搜索功能的示例代码
2019/11/07 Python
python3 assert 断言的使用详解 (区别于python2)
2019/11/27 Python
python飞机大战pygame游戏背景设计详解
2019/12/17 Python
Python基于BeautifulSoup爬取京东商品信息
2020/06/01 Python
Square Off美国/加拿大:世界上最聪明的国际象棋棋盘
2018/12/06 全球购物
彪马法国官网:PUMA法国
2019/12/15 全球购物
Wolford法国官网:奥地利奢侈内衣品牌
2020/08/11 全球购物
给排水工程师岗位职责
2013/11/21 职场文书
肯尼迪就职演说稿
2013/12/31 职场文书
七年级历史教学反思
2014/02/05 职场文书
工商行政管理专业求职书
2014/05/23 职场文书
幼儿园推普周活动总结
2015/05/07 职场文书
一小时迅速入门Mybatis之bind与多数据源支持 Java API
2021/09/15 Javascript
小程序实现悬浮按钮的全过程记录
2021/10/16 HTML / CSS
python微信智能AI机器人实现多种支付方式
2022/04/12 Python