被这个卡了好久,后面有大佬发了一个demo给我,瞬间感觉清晰了好多,分享如下
// 云函数入口函数
exports.main = async (event, context) => {
const wxContext = cloud.getWXContext()
console.log(‘微信支付回调函数执行,传入的参数是’);
console.log(event);
console.log(’[必定存在]returnCode 值是’, event.returnCode);
//【1】判断通讯是否成功
if (!event.returnCode === ‘SUCCESS’) {
//通讯失败
console.warn(’[1A]微信支付结果通讯失败786’);
return {
errcode: 0,
errmsg: ‘通讯失败异常,此分支正常情况下不会执行’
}
} else {
//通讯成功,判断业务结果是否成功
if (event.resultCode === ‘SUCCESS’) {
console.log(’[1B]result_code结果为SUCCESS,支付成功’);
//交易详情
console.log(‘微信预支付订单号’, event.prepay_id);
console.log(‘商户自定义订单编号是’, event.outTradeNo);
console.log(‘当前用户的openid是’, event.subOpenid);
console.log(‘当前订单的金额是[单位分]’, event.totalFee);
console.log(‘微信支付订单号’, event.transactionId);
console.log(‘支付完成时间’, event.timeEnd);
console.log(‘商户号’, event.mchId);
console.log(‘子商户号’, event.subMchId);
//支付成功业务逻辑 更改订单状态
//【2】开始更新订单状态
console.log(’[2]准备更新订单状态’);
//写你的业务逻辑
console.warn(’[2B]支付成功,修改订单状态失败,请手动补录’);
return {
errcode: 0,
errmsg: temResult.errMsg
}
}
}
}