收藏
回答

云函数A调用云函数B,可是B很久之后才会执行。云函数执行不是实时的吗?

如题。

云函数A调用云函数B,可是B很久之后才会执行

函数A
console.log('异步执行退款');
// 执行退款
cloud.callFunction({
    name: 'refund',
    data: {
        orderId: orderInfo._id,
        refundFee: orderInfo.totalFee,
        refundType: CONSTANT.refundType.USER_CANCEL_UN_MAKE_UP,
        refundReason: '用户取消订单'
    }
});


调用日志:

函数A在 20:04 执行 cloud.callFunction({name: 'refund'})

函数B在 20:06:24 才 开始调用

最后一次编辑于  2020-08-15
回答关注问题邀请回答
收藏

1 个回答

  • 老张
    老张
    2020-08-16

    云函数里不要用异步,改成await

    2020-08-16
    有用
    回复 5
    • 鹏宇zero
      鹏宇zero
      2020-08-21
      异步调用不支持吗?
      2020-08-21
      回复
    • 鹏宇zero
      鹏宇zero
      2020-08-21
      我只是想触发个动作。返回值什么的不重要。
      2020-08-21
      回复
    • 鹏宇zero
      鹏宇zero
      2020-08-21
      这个是批量触发。。。await的话,整个云函数会超时。
      2020-08-21
      回复
    • 老张
      老张
      2020-08-22回复鹏宇zero
      不行。必须改用同步。云函数运行到结尾,不会等你的异步的结果,如果异步操作还没有结束,也会中断执行。
      2020-08-22
      回复
    • 老张
      老张
      2020-08-22回复鹏宇zero
      批量的话,用Promise.all,如果更大量的话,用Promise.all执行多次调用云函数。总之,云函数里搞批量的话,基本无解。我早放弃了。
      2020-08-22
      回复
登录 后发表内容
问题标签