共计 1225 个字符,预计需要花费 4 分钟才能阅读完成。
微信小程序的云开发领取先看下微信官网给出的流程图:
这张图里,开发者只须要关注的是小程序和云函数端即可;云函数做了很多参数的解决,所以咱们不须要关注证书,签名等,只须要调用相应的函数即可;接下来大抵说下整个领取流程:
一、小程序我的项目要有云开发环境,在应用云能力前,先实现云能力的初始化,即在根目录下的 app.js 中配置;
wx.cloud.init({
env: '环境 id',
traceUser: true,
})
二、要将小程序和商户号的绑定,再在云控制台增加上商户号,增加完之后,须要超级管理员在 微信领取商家助手 公众号进行受权,第一次开明可能没那么快收到受权信息;退款权限须要在商户号平台受权的产品中进行确认受权的;
三、在我的项目的 cloudfunctions 右键新建 node.js 云函数,(一个下单云函数,一个是后果回调云函数),新建之后,而后上传和部署云函数;
下单函数的编写:通过 CloudPay.unifiedOrder() 去下单,留神有些参数是不必填的,能够参考微信官网给的案例,
exports.main = async (event, context) => {
const res = await cloud.cloudPay.unifiedOrder({
"body" : "形容",
"outTradeNo" : "1217752501201407033233368018",
"spbillCreateIp" : "127.0.0.1",
"subMchId" : "商户号",
"totalFee" : 1,
"envId": "云环境 id",//
"functionName": "pay_cb"// 回调后果云函数
})
}
像一些随机数,签名什么的,都不须要传递,留神的是回调函数名和环境 id,event 是客户端传给云函数的参数;
客户端的写法:
wx.cloud.callFunction({
name: '函数名',// 下单的云函数
data: {// 传递的数据
// ...
},
success: res => {
const payment = res.result.payment
wx.requestPayment({// 领取 api
...payment,
success (res) {console.log('pay success', res)
},
fail (err) {console.error('pay fail', err)
}
})
},
fail: console.error,
})
回调后果的函数肯定要留神返回参数给微信服务器,不然会始终回调;
if(event.resultCode == 'SUCCESS'){ // 依据 result_code 查看业务后果胜利进行提交数据通知服务器
// 更新云数据库数据
const res = {errcode:0,errmsg:''}// 须要返回的字段,不返回该字段则始终回调
return res
}
这样整个领取流程接完结了;跟传统的领取形式形式相比,的确简略了很多,也更平安,如果有商户号能够写个 demo 试试呗!
正文完