vue项目使用微信公众号支付总结及遇到的坑


Posted in Javascript onOctober 23, 2018

微信公众号支付

1. 使用jssdk调用微信支付,具体查看开发文档;

使用的vuex,在mutations中

wechatPay (state, data) {
     state.payObject = data
     console.log('微信支付开始请求')
     if (wechat) {
      wx.chooseWXPay({
       timestamp: state.payObject.timeStamp, // 支付签名时间戳
       nonceStr: state.payObject.nonceStr, // 支付签名随机串,不长于 32 位
       package: state.payObject.package, // 统一支付接口返回的prepay_id参数值
       signType: state.payObject.signType, // 签名方式使用新版支付需传入'MD5'
       paySign: state.payObject.paySign, // 支付签名
       success: function (res) {
        alert('成功')
        alert(JSON.stringify(res))
       },
       cancel: function (res) {
        alert('已取消支付')
        alert(JSON.stringify(res))
       },
       fail: function (res) {
        alert(JSON.stringify(res))
       }
      })
     }
    }

在支付页面中commit

// 存储微信支付数据data
  let data = res.body.data
  console.log('即将跳转微信支付')
  this.$store.commit({
    timeStamp: data.timeStamp,
    nonceStr: data.nonceStr,
    type: 'wechatPay',
    package: data.package,
    signType: data.signType,
    paySign: data.paySign
  })

2. 支付点击完成按钮后,前端会收到JavaScript的返回值;

3. 后台收到来自微信开放平台的支付成功回调通知

踩坑

1. chooseWXPay:fail, the permission value is offline verifying

这是因为不能在在微信开发者工具上测试,需要真机测试

2. chooseWXPay:fail

需要配置正确的支付授权目录,vue的单页应用直接配置为域名就行。

其他需要配置为调用支付的上一级目录,以/结束

3. 下单账户与支付账户不一致

需要后台看一下openId配置

总结

以上所述是小编给大家介绍的vue项目使用微信公众号支付总结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
myFocus slide3D v1.1.0 使用方法与下载
Jan 12 Javascript
Lazy Load 延迟加载图片的jQuery插件中文使用文档
Oct 18 Javascript
使用javascipt---实现二分查找法
Apr 10 Javascript
JavaScript也谈内存优化
Jun 06 Javascript
js表单提交和submit提交的区别实例分析
Dec 10 Javascript
jQuery文件上传控件 Uploadify 详解
Jun 20 Javascript
JS使用cookie实现只出现一次的广告代码效果
Apr 22 Javascript
Vue.js进行查询操作的实例详解
Aug 25 Javascript
浅谈Vue 初始化性能优化
Aug 31 Javascript
VeeValidate 的使用场景以及配置详解
Jan 11 Javascript
jQuery实现左右两个列表框的内容相互移动功能示例
Jan 27 jQuery
JS使用JSON.parse(),JSON.stringify()实现对对象的深拷贝功能分析
Mar 06 Javascript
jquery分页插件pagination使用教程
Oct 23 #jQuery
使用 electron 实现类似新版 QQ 的登录界面效果(阴影、背景动画、窗体3D翻转)
Oct 23 #Javascript
解决JavaScript中0.1+0.2不等于0.3问题
Oct 23 #Javascript
React 路由懒加载的几种实现方案
Oct 23 #Javascript
react 兄弟组件如何调用对方的方法示例
Oct 23 #Javascript
详解React 的几种条件渲染以及选择
Oct 23 #Javascript
详解create-react-app 2.0版本如何启用装饰器语法
Oct 23 #Javascript
You might like
分页详解 从此分页无忧(PHP+mysql)
2007/11/23 PHP
解析PHP中DIRECTORY_SEPARATOR,PATH_SEPARATOR两个常量的作用
2013/06/21 PHP
简单的自定义php模板引擎
2016/08/26 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
初学js 新节点的创建 删除 的步骤
2011/07/04 Javascript
JavaScript之Getters和Setters 平台支持等详细介绍
2012/12/07 Javascript
利用window.name实现windowStorage代码分享
2014/01/02 Javascript
JS中的form.submit()不能提交表单的错误原因
2014/10/08 Javascript
JQuery删除DOM节点的方法
2015/06/11 Javascript
jQuery实现的经典竖向伸缩菜单效果代码
2015/09/24 Javascript
JavaScript实现页面跳转的方式汇总
2016/05/16 Javascript
jQuery中each()、find()和filter()等节点操作方法详解(推荐)
2016/05/25 Javascript
基于jQuery下拉选择框插件支持单选多选功能代码
2016/06/07 Javascript
chrome浏览器如何断点调试异步加载的JS
2016/09/05 Javascript
js阻止移动端页面滚动的两种方法
2017/01/25 Javascript
jquery Form轻松实现文件上传
2017/05/24 jQuery
js实现HTML中Select二级联动的实例
2018/01/05 Javascript
微信、QQ、微博、Safari中使用js唤起App
2018/01/24 Javascript
详解Vue CLI 3.0脚手架如何mock数据
2018/11/23 Javascript
JS跨域请求的问题解析
2018/12/03 Javascript
VUE DEMO之模拟登录个人中心页面之间数据传值实例
2019/10/31 Javascript
[01:17:55]VGJ.T vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/20 DOTA
Python中if __name__ == "__main__"详细解释
2014/10/21 Python
老生常谈Python基础之字符编码
2017/06/14 Python
使用Python监控文件内容变化代码实例
2018/06/04 Python
python3.7将代码打包成exe程序并添加图标的方法
2019/10/11 Python
详解html2canvas截图不能截取圆角图片的解决方案
2018/01/30 HTML / CSS
Currentbody法国:健康与美容高科技产品
2020/08/16 全球购物
金山毒霸系列的笔试题
2013/04/13 面试题
linux面试题参考答案(8)
2015/08/11 面试题
会展中心部门工作职责
2013/11/27 职场文书
就业协议书怎么填
2014/09/15 职场文书
2014年企业党支部工作总结
2014/12/04 职场文书
委托书格式范文
2015/01/28 职场文书
2015初中政教处工作总结
2015/07/21 职场文书
Tensorflow与RNN、双向LSTM等的踩坑记录及解决
2021/05/31 Python