微信小程序支付前端源码
作者:oneall 时间:2024-06-19 18:58:51
本文实例为大家分享了微信小程序支付前端源码,供大家参考,具体内容如下
//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 证书 勾上即可
来源:https://www.cnblogs.com/oneall/p/9548448.html
标签:微信小程序,支付
0
投稿
猜你喜欢
Python3基于sax解析xml操作示例
2022-06-07 10:18:52
python内打印变量之%和f的实例
2021-06-19 07:46:46
详解MySQL中InnoDB的存储文件
2024-01-13 04:58:00
重置mysql的root密码最简单的方法
2024-01-18 22:30:02
django项目简单调取百度翻译接口的方法
2023-10-20 18:25:41
MySQL流程控制IF()、IFNULL()、NULLIF()、ISNULL()函数的使用
2024-01-13 19:07:17
Golang中channel的原理解读(推荐)
2024-02-08 15:41:38
Python如何判断数独是否合法
2023-05-18 06:09:45
Go语言中内存管理逃逸分析详解
2024-05-08 10:13:48
python实现删除列表中某个元素的3种方法
2023-02-08 16:01:59
python机器学习基础决策树与随机森林概率论
2023-06-04 16:55:08
SQL Server中数据行批量插入脚本的存储实现
2024-01-15 17:26:59
Python魔法方法 容器部方法详解
2021-02-05 19:25:43
Python标准库之日期、时间和日历模块
2021-04-11 17:05:14
python实现自动登录
2023-10-20 05:11:46
MySQL在Windows中net start mysql 启动MySQL服务报错 发生系统错误解决方案
2024-01-12 21:39:42
Python如何把不同类型数据的json序列化
2021-06-01 22:52:16
php支持中文字符串分割的函数
2023-11-18 21:42:04
CentOS中升级Python版本的方法详解
2021-08-22 20:22:30
Vue.js实现微信过渡动画左右切换效果
2023-07-02 17:03:10