【问题标题】:Azure function (out of process) HTTP Trigger Post request Data limitationAzure 函数(进程外) HTTP 触发 Post 请求 数据限制
【发布时间】:2021-10-01 06:04:04
【问题描述】:

这是 Azure 函数 4x 的问题(进程外)

我正在尝试使用 HTTP 触发器将超过 4 MB(4096 字节)的数据发布到 Azure 函数。

超时了。以下是我在 Azure 函数中的代码

[Function("HttpTriggerCSharp")]
        public async Task<HttpResponseData> HttpTriggerCSharp(
                [HttpTrigger(AuthorizationLevel.Anonymous, "post")] HttpRequestData req,

                FunctionContext executionContext)
        {
            
            HttpResponseData response = HttpResponseData.CreateResponse(req);

            string requestBody = String.Empty;
            using (StreamReader streamReader = new StreamReader(req.Body))
            {
                requestBody = await streamReader.ReadToEndAsync();
            }

            return response;

        }

我使用 Postman 作为客户端,配置如下:

邮递员配置

4MB的测试文件

我查看了微软文档https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-http-webhook-trigger?tabs=csharp

它指的是 100 MB 的限制。请告诉我,我做错了什么?

上述功能适用于进程中的 Azure 函数 (3x)。

【问题讨论】:

    标签: azure-functions serverless


    【解决方案1】:

    Azure Function v4 位于 Preview Mode 中,不完全支持和批准用于生产用途。此外,它仅支持最新版本的 .NET、Javascript 和 Java。查看此language support 了解更多信息。

    我们无法直接从 Azure Function 3.x 迁移到 4.x,因为可能需要更改其他应用设置和函数代码。

    查看更多信息How to target Azure Functions runtime versions

    要解决此问题,请尝试将函数应用从 3.x 迁移到 4.x。要将功能从 3.x 迁移到 4.x,请执行以下两个步骤:

    1. 使用以下 Azure CLI 命令将 FUNCTIONS_EXTENSION_VERSION 应用程序设置设置为 ~4

      az functionapp config appsettings set --settings FUNCTIONS_EXTENSION_VERSION=~4 -n <APP_NAME> -g <RESOURCE_GROUP_NAME>
      
    2. 对于 Windows 函数应用,运行时需要使用以下 Azure CLI 命令启用 .NET 6.0:

      az functionapp config set --net-framework-version v6.0 -n <APP_NAME> -g <RESOURCE_GROUP_NAME>
      

    请注意,Azure Functions 4.x 对扩展强制执行 minimum version requirements。而 Azure Functions 4.x 要求 Microsoft.NET.Sdk.Functions 扩展名至少为 4.0.0

    无论函数应用超时设置如何,230 秒都是 HTTP 触发函数响应请求所需的最长时间。如果超过此值,则会出现超时错误。

    查看Function app timeout duration documentation 了解更多信息。

    【讨论】:

      猜你喜欢
      • 2021-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-15
      • 1970-01-01
      • 2021-09-23
      • 2019-05-12
      • 2017-06-14
      相关资源
      最近更新 更多