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

模块一 函数调用异步调用问题 1、在异步调用的时候请求头是不是一定要添加 "X-Fc-Invocat

模块一 函数调用异步调用问题

1、在异步调用的时候请求头是不是一定要添加 "X-Fc-Invocation-Type":"Async" ,必须填写?

2、在异步配置中 配置到"成功目标"的时候 提示只支持事件函数、那是不是http函数就无法配置异步调用 ?

展开
收起
学习娃 2023-05-29 17:31:42 22601 0
5 条回答
写回答
取消 提交回答
  • 1、在阿里云函数计算(Function Compute)中,异步调用需要通过请求头中的 "X-Fc-Invocation-Type":"Async" 来实现。这个请求头是必须填写的,否则函数调用默认为同步调用。

    2、在函数计算中,异步调用只支持事件函数。目前,异步调用不支持HTTP触发器的函数。如果您想要实现HTTP触发器的异步调用,可以考虑使用阿里云的消息服务(MNS)等方式来实现。

    2023-05-30 09:13:33
    赞同 2 展开评论 打赏
    1. 是的,必须加这个header

    2. http函数无法配置为“成功目标”,但是可以通过其他手段被异步触发调用的

    此答案来自钉钉群“阿里函数计算官网客户"

    2023-05-29 18:37:06
    赞同 2 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    是的,在进行异步调用时,需要在请求头中添加 "X-Fc-Invocation-Type":"Async",以告知函数计算服务将该请求视为异步调用请求。

    异步配置中的成功目标只支持事件函数,因此对于 HTTP 函数,无法直接配置异步调用。不过你可以通过在 HTTP 函数中调用事件函数来实现异步调用的效果。

    2023-05-29 18:25:31
    赞同 1 展开评论 打赏
    1. 在使用函数计算进行异步调用时,需要在请求头(Headers)中添加 "x-fc-invocation-type": "Async" 来指示函数计算执行该请求时应采用异步方式进行。因此,在异步调用中,填写该 Header 是必须的。

    2. 在函数计算的异步调用配置当中,只支持以“事件触发器”的形式将结果发送到服务总线、消息队列(MNS)或对象存储(OSS)。如果您想要实现 HTTP 函数的异步调用,可以在您的函数代码中向这些异步目标手动发布异步消息,然后在订阅这些目标的另一个函数中处理这些消息。也就是说,HTTP 函数本身不能直接作为异步函数被配置,但它仍可以通过代码实现与异步机制的集成。

    2023-05-29 17:48:58
    赞同 1 展开评论 打赏
  • 随心分享,欢迎友善交流讨论:)

    1、是的,在异步调用的时候请求头需要添加 "X-Fc-Invocation-Type":"Async",否则函数将会同步执行。 2、是的,目前只支持事件函数的异步配置,因为事件函数是基于事件触发的,可以异步执行,而 HTTP 函数是基于请求-响应模式的,无法异步执行。

    2023-05-29 17:46:00
    赞同 1 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    Hologres Serverless之路:揭秘弹性计算组 立即下载
    Serverless开发平台: 让研发效能再提升 立即下载
    Serverless 引领云上研发新范式 立即下载