gpt4 book ai didi

asp.net-mvc - ASP.NET Web API,从 Flex FileReference 上传时 MIME 多部分流意外结束

转载 作者:行者123 更新时间:2023-12-02 15:18:34 45 4
gpt4 key购买 nike

按照 ASP.NET 上的教程,实现了用于执行异步文件上传的 Web API Controller 方法,如下所示:

public Task<HttpResponseMessage> PostFormData()
{
// Check if the request contains multipart/form-data.
if (!Request.Content.IsMimeMultipartContent())
{
throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
}

string root = HttpContext.Current.Server.MapPath("~/App_Data");
var provider = new MultipartFormDataStreamProvider(root);

// Read the form data and return an async task.
var task = Request.Content.ReadAsMultipartAsync(provider).
ContinueWith<HttpResponseMessage>(t =>
{
if (t.IsFaulted || t.IsCanceled)
{
Request.CreateErrorResponse(HttpStatusCode.InternalServerError, t.Exception);
}

return Request.CreateResponse(HttpStatusCode.OK);
});

return task;
}

通过标准的多部分 HTML 表单上传文件效果非常好。但是,当另一个开发人员尝试通过 Flex 的 FileReference 类构造的多部分表单上传文件时,会抛出错误:

Unexpected end of MIME multipart stream. MIME multipart message is not complete.

我不知道问题出在 Web API 还是 Flex 上。我发现了一些没有影响的相关修复( Multipart form POST using ASP.Net Web API ),最近发现了这个( "MIME multipart stream. MIME multipart message is not complete" error on webapi upload )。如果第二个链接成立,有谁知道它是否在通过 Nuget 提供的当前版本的 Web API 中?讨论是在 5 月份进行的,Nuget 的最新版本是在 8 月份,因此我认为此修复程序已经部署,并且不是我的问题的根本原因。

最佳答案

我在使用 MVC4 时遇到了同样的问题,但是 Will 是正确的,请在您的输入中添加一个名称......

<input type="file" id="fileInput" name="fileInput"/>

所有的魔力都恢复正常了!

关于asp.net-mvc - ASP.NET Web API,从 Flex FileReference 上传时 MIME 多部分流意外结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13770536/

45 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com