使用AzureFunction.NET5和HttpRequestData,如何处理文件上传(表单数据)?

c#

较旧的 Azure 函数可以访问HttpRequest,这允许我们通过req.Form.Files等访问上传​​的文件。

HttpRequestData而是使用隔离的 .NET5 Azure 函数,它不提供对Form. 如何提取发布到该功能的上传文件?

回答

您可以添加<PackageReference Include="HttpMultipartParser" Version="5.0.0" />.csproj 文件。并使用var parsedFormBody = MultipartFormDataParser.ParseAsync(req.Body);,您将获得您的文件。

在邮递员。

调试时

下面是我的测试代码。

[Function("test")]
public static HttpResponseData Run1([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post")] HttpRequestData req,
        FunctionContext executionContext
        )
    {
        // get query params
        var testvalue=executionContext.BindingContext.BindingData["testparams"];
        // get form-body        
        var parsedFormBody =  MultipartFormDataParser.ParseAsync(req.Body);
        var file=parsedFormBody.Result.Files[0];

        var response = req.CreateResponse(HttpStatusCode.OK);
        response.Headers.Add("Content-Type", "text/plain; charset=utf-8");

        response.WriteString("Welcome to Azure Functions!");

        return response;
    }


以上是使用AzureFunction.NET5和HttpRequestData,如何处理文件上传(表单数据)?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>