首页 > 解决方案 > httpTrigger 中的 Blob 绑定在 VS2017 Azure 函数模板中不起作用

问题描述

我想通过如下获取请求将 blob 的文件名传递给 httptrigger。

http://localhost:7071/api/CSVDataMigrationHttpTrigger/testdata.csv

天蓝色函数的代码

public static async Task<HttpResponseMessage> Run(
        [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = "CSVDataMigrationHttpTrigger/{name}")]
        HttpRequest req, string name,
        [Blob("csvdata-upload/{name}", FileAccess.Read, Connection = "AzureWebJobsStorage")]
        Stream inputBlob, ILogger log)
    {}

inputBlob 参数未解析,它返回 null。

但是,如果我在 Blob 参数中将文件名指定为“testData.csv”,如下所示,那么 inputBlob 将得到正确解析。

  public static async Task<HttpResponseMessage> Run(
            [HttpTrigger(AuthorizationLevel.Function, "get", "post", Route = "CSVDataMigrationHttpTrigger/{name}")]
            HttpRequest req, string name,
            [Blob("csvdata-upload/testData.csv", FileAccess.Read, Connection = "AzureWebJobsStorage")]
            Stream inputBlob, ILogger log){}

标签: c#azureazure-functions

解决方案


我终于发现,当传递给 blob 时,文件名区分大小写。希望它可以帮助任何有同样问题的人。


推荐阅读