//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) } }) } })