博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
小程序支付前端代码
阅读量:5158 次
发布时间:2019-06-13

本文共 3192 字,大约阅读时间需要 10 分钟。

var app = getApp();    Page({        data: {},        onLoad: function (options) {            // 页面初始化 options为页面跳转所带来的参数            var that = this            //登陆获取code            wx.login({                success: function (res) {                    console.log(res.code)                    //获取openid                    that.getOpenId(res.code)                }            });        },        getOpenId: function (code) {            var that = this;            wx.request({                url: "https://api.weixin.qq.com/sns/jscode2session?appid=小程序appid&secret=小程序应用密钥&js_code=" + code + "&grant_type=authorization_code",                data: {},                method: 'GET',                success: function (res) {                    that.generateOrder(res.data.openid)                },                fail: function () {                    // fail                },                complete: function () {                    // complete                }            })        },        /**生成商户订单 */        generateOrder: function (openid) {            var that = this            //统一支付            wx.request({                url: '后台路径',                method: 'GET',                data: {                    gfee: '商品价钱',                    gname: '商品名称',                    openId:openid                    (商品价钱和商品名称根据自身需要是否传值,openid为必传)                },                success: function (res) {                    var pay = res.data                    //发起支付                    var timeStamp = pay[0].timeStamp;                    var packages = pay[0].package;                    var paySign = pay[0].paySign;                    var nonceStr = pay[0].nonceStr;                    var param = { "timeStamp": timeStamp, "package": packages, "paySign": paySign, "signType": "MD5", "nonceStr": nonceStr };                    that.pay(param)                },            })        },        /* 支付   */        pay: function (param) {            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) {                    // success                    wx.navigateBack({                        delta: 1, // 回退前 delta(默认为1) 页面                        success: function (res) {                            wx.showToast({                                title: '支付成功',                                icon: 'success',                                duration: 2000                            })                        },                        fail: function () {                            // fail                        },                        complete: function () {                            // complete                        }                    })                },                fail: function (res) {                    // fail                },                complete: function () {                    // complete                }            })        }    })

 

转载于:https://www.cnblogs.com/anxiaoyu/p/6937902.html

你可能感兴趣的文章
Git的使用和配置小白必看都是干货,为您解惑
查看>>
使用静态函数impl模式做接口
查看>>
SharePoint【学习笔记】-- SharePoint Windows认证模式下 限制人员选取器能访问OU
查看>>
日常(身怀绝技的大家)
查看>>
python之禅
查看>>
C#索引器-索引器与数组属性的比较
查看>>
RFC2616-HTTP1.1-Methods(方法规定部分—译文)
查看>>
【转】 STL中的set容器的一点总结
查看>>
jquery中的$("#id")与document.getElementById("id")的区别
查看>>
JZOJ5771 遨游
查看>>
使用线程池测试cpu的并发计算能力
查看>>
C++Primer第五版——习题答案详解(一)
查看>>
Running an etcd cluster on localhost
查看>>
Android Spinner,下拉菜单的功能和用法
查看>>
Proteus中MATRIX-8X8 LED灯的连接
查看>>
第10章 文档对象模型DOM 10.1 Node节点类型
查看>>
有时候用having count(*) > xx 挺好
查看>>
输入的是util包下面的 时间, 接受的是java.sql.date 或者 java.util.date类型
查看>>
火眼推出Windows免费渗透测试套件,包含140多款工具
查看>>
docker--容器和镜像的导入导出及部署
查看>>