微信小程序支付前端源码


Posted in Javascript onAugust 29, 2018

本文实例为大家分享了微信小程序支付前端源码,供大家参考,具体内容如下

//index.js
Page({
 data: {

 },
 //点击支付按钮进行支付
 payclick: function () {
 var t = this;
 wx.login({
  //获取code换取openID
  success: function (res) {
  //code = res.code //返回code
  console.log("获取code");
  console.log(res.code);
  var opid = t.getOpenId(res.code);
  }
 })
 },
 //获取openID
 getOpenId: function (code) {
 var that = this;
 wx.request({
  url: "https://api.weixin.qq.com/sns/jscode2session?appid=你的appid&secret=AppSecret(小程序密钥)&js_code=" + code + "&grant_type=authorization_code",
  data: {},
  method: 'GET',
  success: function (res) {
  console.log("获取openid")
  console.log(res)
  that.setData({
   openid: res.data.openid,
   session_key: res.data.session_key
  })
  that.generateOrder(res.data.openid)
  },
  fail: function () {
  // fail
  },
  complete: function () {
  // complete
  }
 })
 },
 //生成商户订单
 generateOrder: function (openid) {
 var that = this
 wx.request({
  url: 'http://localhost:25492/wx/getda',//后台请求地址
  method: 'GET',
  data: {
  gfee: '商品价钱',
  gname: '商品名称',
  openId: openid
  //(商品价钱和商品名称根据自身需要是否传值, openid为必传)
  },
  success: function (res) {
  console.log("后台获取数据成功");
  console.log(res);
  var param = { "timeStamp": res.data.timeStamp, "package": res.data.package, "paySign": res.data.paySign, "signType": "MD5", "nonceStr": res.data.nonceStr };
   //发起支付
  that.pay(param);
  },
  fail: function (res) {
  console.log("向后台发送数据失败")
  }
 })
 },
 //支付
 pay: function (param) {
 var that = this;
 console.log("发起支付")
 console.log(param)
 wx.requestPayment({
  timeStamp: param.timeStamp,
  nonceStr: param.nonceStr,
  package: param.package,
  signType: param.signType,
  paySign: param.paySign,
  success: function (res) {
  console.log("success");
  console.log(res);
  },
  fail: function (res) {
  console.log("fail")
  console.log(res);
  },
  complete: function (res) {
  console.log("complete");
  console.log(res)
  }
 })
 }
})

本地调试如过出现请求失败请将    微信开发者工具  >    详情(右上角) > 不校验合法域名、web-view(业务域名)、TLS 版本以及 HTTPS 证书   勾上即可

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

Javascript 相关文章推荐
犀利的js 函数集合
Jun 11 Javascript
利用JS解决ie6不支持max-width,max-height问题的方法
Jan 02 Javascript
JS中Date日期函数中的参数使用介绍
Jan 02 Javascript
Node.js 文件夹目录结构创建实例代码
Jul 08 Javascript
jQuery元素属性操作实例(设置、获取及删除元素属性)
Sep 08 Javascript
jquery遍历标签中自定义的属性方法
Sep 17 Javascript
Easyui的组合框的取值与赋值
Oct 28 Javascript
微信小程序中实现手指缩放图片的示例代码
Mar 13 Javascript
详解React 的几种条件渲染以及选择
Oct 23 Javascript
jquery实现图片无缝滚动 蒙版遮蔽效果
Jan 11 jQuery
node.js使用yargs处理命令行参数操作示例
Feb 11 Javascript
Vue实现背景更换颜色操作
Jul 17 Javascript
微信小程序使用swiper组件实现类3D轮播图
Aug 29 #Javascript
javascript中UMD规范的代码推演
Aug 29 #Javascript
详解webpack自定义loader初探
Aug 29 #Javascript
在vue中使用SockJS实现webSocket通信的过程
Aug 29 #Javascript
微信小程序自定义select下拉选项框组件的实现代码
Aug 28 #Javascript
微信小程序中上传图片并进行压缩的实现代码
Aug 28 #Javascript
vee-validate vue 2.0自定义表单验证的实例
Aug 28 #Javascript
You might like
从MySQL数据库表中取出随机数据的代码
2007/09/05 PHP
PHP使用第三方即时获取物流动态实例详解
2017/04/27 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
javascript 年月日联动实现核心代码
2009/12/21 Javascript
JAVASCRIPT style 中visibility和display之间的区别
2010/01/22 Javascript
使用Jquery打造最佳用户体验的登录页面的实现代码
2011/07/08 Javascript
javascript得到当前页的来路即前一页地址的方法
2014/02/18 Javascript
JS实现FLASH幻灯片图片切换效果的方法
2015/03/04 Javascript
JavaScript学习笔记之DOM基础 2.4
2015/08/14 Javascript
在Mac OS上安装使用Node.js的项目自动化构建工具Gulp
2016/06/18 Javascript
angular2倒计时组件使用详解
2017/01/12 Javascript
bootstrap 通过加减按钮实现输入框组功能
2017/11/15 Javascript
jquery获取select选中值的文本,并赋值给另一个输入框的方法
2018/08/21 jQuery
jQuery设置下拉框显示与隐藏效果的方法分析
2019/09/15 jQuery
js 计数排序的实现示例(升级版)
2020/01/12 Javascript
如何通过javaScript去除字符串两端的空白字符
2020/02/06 Javascript
Vue export import 导入导出的多种方式与区别介绍
2020/02/12 Javascript
JQuery事件冒泡和默认行为代码实例
2020/05/13 jQuery
Python求解任意闭区间的所有素数
2018/06/10 Python
解决webdriver.Chrome()报错:Message:'chromedriver' executable needs to be in Path
2019/06/12 Python
Windows10+anacond+GPU+pytorch安装详细过程
2020/03/24 Python
Python如何自动获取目标网站最新通知
2020/06/18 Python
windows+vscode安装paddleOCR运行环境的步骤
2020/11/11 Python
matplotlib bar()实现多组数据并列柱状图通用简便创建方法
2021/02/24 Python
使用CSS3制作一个简单的进度条(demo)
2017/05/23 HTML / CSS
HTML5 Canvas标签使用收录
2009/07/07 HTML / CSS
HTML5基于flash实现播放RTMP协议视频的示例代码
2020/12/04 HTML / CSS
Luxplus瑞典:香水和美容护理折扣
2018/01/28 全球购物
澳大利亚女性快速时尚零售商:Ally Fashion
2018/04/25 全球购物
葡萄牙航空官方网站:TAP Air Portugal
2019/10/31 全球购物
高中生物教学反思
2014/02/05 职场文书
班子查摆四风个人对照检查材料思想汇报
2014/10/04 职场文书
2015年班组建设工作总结
2015/05/13 职场文书
解决Golang time.Parse和time.Format的时区问题
2021/04/29 Golang
JavaScript展开运算符和剩余运算符的区别详解
2022/02/18 Javascript
win10如何更改appdata文件夹的默认位置?
2022/07/15 数码科技