【问题标题】:Azure Function with Multiple Output Bindings - Blob and HTTP具有多个输出绑定的 Azure 函数 - Blob 和 HTTP
【发布时间】:2018-09-12 20:25:33
【问题描述】:

我正在尝试编写一个 Azure 函数,该函数将输出一个 blob,并向调用者返回一个 HTTP 响应。 function.json 部分非常简单 -

{ 
      "name": "$return", 
      "type": "http", 
      "direction": "out" 
    }, 
    {
      "type": "blob",
      "name": "outputBlob",
      "path": "outcontainer/{rand-guid}",
      "connection": "STORAGE",
      "direction": "out"
    }

但我在实际函数代码中访问 blob 输出时遇到了问题。根据示例,它应该如下所示:

    public static async Task<HttpResponseMessage> Run(HttpRequestMessage req,
      out string outputBlob, TraceWriter log)
    {
    //proccess request and create blob output
    }

如您所料,这会引发错误,因为异步调用中不能有 out 参数。我不想让调用同步,因为我们预计会有相当大的音量。

甚至可以有一个带有 blob 输出的 HTTP 输出吗?如果是这样,你会怎么做?

【问题讨论】:

    标签: azure-functions azure-blob-storage


    【解决方案1】:

    我认为我的错误是假设输出 blob 只能绑定到一个字符串,因为这是我在大多数示例中看到的。将绑定更改为 Stream,然后在我返回 HTTP 响应之前执行 Stream.WriteAsync 解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-04-22
      • 1970-01-01
      • 2017-04-06
      • 2021-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多