收藏
回答

云函数支付,统一下单,functionName:pay_cb 返回支付成功信息,怎么传回小程序 ?

我统一下单,我的functionName:pay_cb函数中返回 retrun{ errcode:0 ,errmsg:success}怎么传回小程序端呢?我现在只能在日志里面能看到这个返回值。

 统一下单云函数: 
  const res = await cloud.cloudPay.unifiedOrder({
      "body" : "德海生鲜",
      "outTradeNo" : event.order_number_send,
    "spbillCreateIp" : "127.0.0.1",
    "subMchId" : "1591",
    "totalFee" : 1,
    "envId""dehai-alpha-bq",
    "functionName""pay_cb",
  })
  console.log("bpay=",res)
  return res
}

"functionName""pay_cb" 云函数:
// pay_cb 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init({
  env:'dehai-alpha-bk9zq'
})
const db = cloud.database()
const _ = db.command
exports.main = async (event, context) => {
  await db.collection('orders').doc(event.outTradeNo).set({
    data:event
  })
  return {
    errcode:0,
    errmsg:'SUCCESS'
  }
}
回答关注问题邀请回答
收藏

3 个回答

  • 老张
    老张
    2020-06-08

    并不能返回通知给小程序端。需要小程序主动查询数据库,看某订单是否支付成功。

    2020-06-08
    有用 4
    回复 3
    • 漫漫路
      漫漫路
      2020-06-08
      这个好像确实不能直接返回小程序端,我用楼下酸奶的方法测试是可以监听都数库改变的
      2020-06-08
      回复
    • 漫漫路
      漫漫路
      2020-06-08
      加上functionName:pay_cb,更新到数据库来判断支付是否成功,好像还不够谨慎。我测试导入的数据,故意写错了,数据更新不到数据库数据,但是支付照样成功了。查看我的交易记录是成功的
      2020-06-08
      回复
    • 老张
      老张
      2020-06-09回复漫漫路
      看上去是我写的代码?这只个DEMO,具体拿到回调通知还需要做些什么,你自己要写的。
      2020-06-09
      回复
  • o0o有脾气的酸奶
    o0o有脾气的酸奶
    2020-06-08

    watch应该能满足你,我没用过,自己去试试

    https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/collection/Collection.watch.html

    2020-06-08
    有用 1
    回复 11
    • 漫漫路
      漫漫路
      2020-06-08
      我试了,这方法是能返回需要改对应的数据,输出两条,一个原来的,一个改后的。但是官方的那个 const watcher = 好像有问题,加上这个就不能执行了
      2020-06-08
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      2020-06-09回复漫漫路
      2020-06-09
      3
      回复
    • 漫漫路
      漫漫路
      2020-06-09
      你说的是。我现在想着是再修改数据库订单状态前,我调用微信云函数查询订单,判断tradeState ==success; 然后再修改我自定义的订单状态order.state == 2。
      2020-06-09
      回复
    • 漫漫路
      漫漫路
      2020-06-09回复漫漫路
      我对这个支付订单通知,不太懂用,这个通知大概在什么场景下会用到?
      2020-06-09
      回复
    • o0o有脾气的酸奶
      o0o有脾气的酸奶
      2020-06-09回复漫漫路
      支持成功后,用户没有点 完成 直接杀掉小程序,就不会进入wx.requestPayment的支付成功回调里,你写在wx.requestPayment支付成功回调里的逻辑不会被执行,所以异步通知是有必要的
      2020-06-09
      2
      回复
    查看更多(6)
  • 诗和远方
    诗和远方
    2020-10-20
    求大佬告知outTradeNo 怎么来的?产生规则是什么?
    

    2020-10-20
    有用
    回复 1
登录 后发表内容
问题标签