纯代码:第一步就秒过:
// pay_cb 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
const db = cloud.database()
const _ = db.command
exports.main = async (event, context) => {
//回调信息备案
await db.collection('cloudPay').doc(event.outTradeNo).set({
data:event
})
//其他业务逻辑
return {
errcode:0,
errmsg:'SUCCESS'
}
}
更多内容:
// 更新数据库状态
exports.main = async (event, context) => { // 更新数据库 await request({ url: 'http://xxxxxxxxxxxxxxxxxxx.com', // 我们自己的服务 method: 'POST', data: { ...event, }, success: (res) => { console.log('更新成功') /* 2 */ if (res && parseInt(res.statusCode) === 200) { return { errcode: 0, errmsg: 'SUCCESS' } } else { return { errcode: 1, errmsg: 'FAIL' } } }, fail: (res) => { console.log('更新失败') /* 2 */ return { errcode: 1, errmsg: 'FAIL' } }, }) }
请教大佬,这种写法中,注释 1 和 2 处观察不到代码执行(使用云函数本地调试打断点也不会进入回调),微信也得不到这两个回调中 return 的对象——是这种写法有问题吗?还是说并没有必要这样写,直接判断一下 returnCode 和 resultCode 均为 SUCCESS 就可以放心的返回 { errcode: 0 } 了?
烦请不吝赐教,感谢!
大神,functionName填写回调的函数名还需要什么其他的操作吗?我填写了payBack云函数它不执行,支付是成功的,但是日志中这个函数根本没被调用
支付成功了 但是回调没有接收到
还有其它操作吗?
大神,能帮助下吗?为什么我返回的package: "prepay_id=",是空的?谢谢啦
success {timeStamp: "1591790706", nonceStr: "spRXXjRuaCJV5vEL", package: "prepay_id=", signType: "MD5", …}
exports.main = async function(event, context) {
const res = await cloud.cloudPay.unifiedOrder({
"body" : event.body,//支付内容描述
"outTradeNo" : event.outTradeNo,//支付订单号
"spbillCreateIp" : event.spbillCreateIp,//这里填这个就可以
"subMchId" : event.subMchId,
"totalFee" : event.totalFee,//订单总金额
"envId": "dwyz-shop-72a24a",//云开发环境ID
"functionName": "pay_cb",//回调函数名
})
return res
}
统一下单的函数,返回的prepay_id是空的。。。
您做外包吗?可否建立联系,微信号:zhangdapengno1