开发者社区 > 云原生 > Serverless > 正文

在阿里函数计算中,我想在response.send()之后继续执行其它代码,请问怎么做?

在阿里函数计算中,我在函数计算中使用node环境做http服务,
经过多次测试总结,response.send()之后,环境好像立刻就"析构"了。我想在response.send()之后继续执行其它代码,请问怎么做?

展开
收起
小小鹿鹿鹿 2023-11-06 17:25:11 28 0
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    为了在响应结束之后继续执行后续的操作,可以考虑异步编程的方式,使用Promise或者其他回调函数来实现。例如:

    1. 将要执行的任务放到then方法中,例如:
    function sendResponse(req, res){
      return new Promise((resolve, reject) => {
        res.send(response);
        resolve();
      });
    }
    sendResponse.then(() => {
      // do something...
    })
    
    1. 使用async/await:
    async function sendResponse(req, res){
      await res.send(response);
      // do something...
    }
    
    1. 使用其他方式等待函数执行完毕
    2023-11-07 13:06:41
    赞同 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    All in Serverless 阿里云核心产品全面升级 立即下载
    AIGC 浪潮之上,森马的 Serverless 实践之旅 立即下载
    极氪大数据 Serverless 应用实践 立即下载