vue前后分离调起微信支付


Posted in Javascript onJuly 29, 2019

本文实例为大家分享了vue前后分离调起微信支付的具体代码,供大家参考,具体内容如下

@ VUE调起微信支付

VUE前后分离调起微信支付

支付很简单,但每次都是在网上直接扒下来使用,老年人记忆,于是就自己记录一下,方便以后快速的粘贴复制;

第一步: VUE 需要安装 微信支付模块

// npm install weixin-js-sdk
import wx from "weixin-js-sdk";

第二步:封装 微信支付方法

wexinPay(data, cb, errorCb) {
  //获取后台传入的数据
  let appId = data.appId;
  let timestamp = data.timeStamp;
  let nonceStr = data.nonceStr;
  let signature = data.signature;
  let packages = data.package;
  let paySign = data.paySign;
  let signType = data.signType;
  console.log('发起微信支付')
  //下面要发起微信支付了
  wx.config({
   debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
   appId: appId, // 必填,公众号的唯一标识
   timestamp: timestamp, // 必填,生成签名的时间戳
   nonceStr: nonceStr, // 必填,生成签名的随机串
   signature: signature, // 必填,签名,见附录1
   jsApiList: ['chooseWXPay'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
  });
  wx.ready(function () {
   wx.chooseWXPay({
    timestamp: timestamp, // 支付签名时间戳,注意微信jssdk中的所有使用timestamp字段均为小写。但最新版的支付后台生成签名使用的timeStamp字段名需大写其中的S字符
    nonceStr: nonceStr, // 支付签名随机串,不长于 32 位
    package: packages, // 统一支付接口返回的prepay_id参数值,提交格式如:prepay_id=***)
    signType: signType, // 签名方式,默认为'SHA1',使用新版支付需传入'MD5'
    paySign: paySign, // 支付签名
    success: function (res) {
     // 支付成功后的回调函数
     cb(res);
    },
    fail: function (res) {
     //失败回调函数
     errorCb(res);
    }
   });
  });
  wx.error(function (res) {
   // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
   /*alert("config信息验证失败");*/
  });
 }

第三步:向后台请求数据 成功获取 转入微信支付方法 调起 微信支付

//请求后台接口获取数据 准备进行微信支付 
  that.axios.post("user/recommend", data).then(res => {
  //成功状态下 
  if (res.data.status) {
   // 存储微信支付数据data
   let data = res.data.data;
   console.log("即将跳转微信支付");
   //函数为分装过得 (就是调用微信支付)
   http.wexinPay(
   {
    appId: data.appId,
    nonceStr: data.nonceStr,
    package: data.package,
    paySign: data.paySign,
    signType: data.signType,
    timeStamp: data.timeStamp
   },
   //成功回调函数
   res => {
    that.$router.push({ path: "/vip" });
   }
   );
  } 
  else {
   that.$message.error(res.data.message);
 }
});

PS: 注意查看数据是够对应 ,后台有时候可能会把提现和支付搞混,保证数据正确性;

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
自己的js工具 Cookie 封装
Aug 21 Javascript
myEvent.js javascript跨浏览器事件框架
Oct 24 Javascript
jQuery的DOM操作之删除节点示例
Jan 03 Javascript
js判断文本框剩余可输入字数的方法
Feb 04 Javascript
js实现多选项切换导航菜单的方法
Feb 06 Javascript
jQuery团购倒计时特效实现方法
May 07 Javascript
JavaScript暂停和继续定时器的实现方法
Jul 18 Javascript
利用js的闭包原理做对象封装及调用方法
Apr 07 Javascript
webpack 3.X学习之多页面打包的方法
Sep 04 Javascript
一个小时快速搭建微信小程序的方法步骤
Apr 15 Javascript
Vue数据绑定简析小结
May 07 Javascript
使用JavaScript和MQTT开发物联网应用示例解析
Aug 07 Javascript
详解vue-property-decorator使用手册
Jul 29 #Javascript
微信小程序new Date()方法失效问题解决方法
Jul 29 #Javascript
微信小程序 WXML节点信息查询详解
Jul 29 #Javascript
微信小程序登录对接Django后端实现JWT方式验证登录详解
Jul 29 #Javascript
JavaScript HTML DOM元素 节点操作汇总
Jul 29 #Javascript
vue.js 2.0实现简单分页效果
Jul 29 #Javascript
JavaScript如何获取一个元素的样式信息
Jul 29 #Javascript
You might like
基于empty函数的判断详解
2013/06/17 PHP
php中error与exception的区别及应用
2014/07/28 PHP
php根据日期显示所在星座的方法
2015/07/13 PHP
PHP实现上传图片到 zimg 服务器
2016/10/19 PHP
php获取访问者浏览页面的浏览器类型
2017/01/23 PHP
Laravel如何使用Redis共享Session
2018/02/23 PHP
javascript Excel操作知识点
2009/04/24 Javascript
JS判断、校验MAC地址的2个实例
2014/05/05 Javascript
js实现select跳转菜单新窗口效果代码分享(超简单)
2015/08/21 Javascript
AngularJS表达式讲解及示例代码
2016/08/16 Javascript
vuex 项目结构目录及一些简单配置介绍
2018/04/08 Javascript
菊花转动的jquery加载动画效果
2018/08/19 jQuery
[46:16]2018DOTA2亚洲邀请赛3月30日 小组赛B组 iG VS VP
2018/03/31 DOTA
[43:51]2018DOTA2亚洲邀请赛3月30日 小组赛B组 EG VS Secret
2018/03/31 DOTA
Python去除列表中重复元素的方法
2015/03/20 Python
Python实现字符串匹配算法代码示例
2017/12/05 Python
Python 实现选择排序的算法步骤
2018/04/22 Python
python通过伪装头部数据抵抗反爬虫的实例
2018/05/07 Python
python 删除系统中的文件(按时间,大小,扩展名)
2020/11/19 Python
Html5应用程序缓存(Cache manifest)
2018/06/04 HTML / CSS
params有什么用
2016/03/01 面试题
AJAX应用和传统Web应用有什么不同
2013/08/24 面试题
毕业自我鉴定范文
2013/11/06 职场文书
酒店销售经理岗位职责
2014/01/31 职场文书
音乐器材管理制度
2014/01/31 职场文书
物理系毕业生自荐书范文
2014/02/22 职场文书
群众路线学习心得体会范文
2014/11/05 职场文书
工程项目合作意向书
2015/05/08 职场文书
项目验收申请报告
2015/05/15 职场文书
公务员学习中国梦心得体会
2016/01/05 职场文书
《揠苗助长》教学反思
2016/02/20 职场文书
公司员工违法违章行为检讨书
2019/06/24 职场文书
告诉你创业计划书的8个实用技巧
2019/07/12 职场文书
小型企业的绩效考核制度模板
2019/11/21 职场文书
总结Python常用的魔法方法
2021/05/25 Python
HTML5页面打开微信小程序功能实现
2022/09/23 HTML / CSS