我正在尝试使用.Net Framework 4.5 和 Web API 将文件上传到使用 Spring MVC 处理文件上传的第 3 方客户端。每次尝试都会遇到错误,“所需的 MultipartFile 参数‘文件’不存在。”
有没有其他人遇到过这个问题?如果是这样,您是如何解决的?Web API 似乎没有提供适当的机制/容器来发送到 Spring,以便它能够识别它。
这是当前代码。
Uri webService = new Uri(objectInstance);
var fileContent = new ByteArrayContent(System.IO.File.ReadAllBytes(HttpContext.Current.Server.MapPath("taleotest.xml")));//new ByteArrayContent(new byte[100]);
fileContent.Headers.ContentDisposition = new ContentDispositionHeaderValue("file")
{
FileName = @"C:\taleotest.xml"
};
var formData = new FormUrlEncodedContent(new[]
{
new KeyValuePair<string, string>("name", "test"),
new KeyValuePair<string, string>("title", "test2")
});
//fileContent.add
var cookieContainer = new CookieContainer();
cookieContainer.Add(webService, new Cookie("authToken", _authToken));
var handler = new HttpClientHandler() { CookieContainer = cookieContainer };
HttpClient httpClient = new HttpClient(handler);
MultipartContent content = new MultipartContent();
content.Add(formData);
content.Add(fileContent);
var response = httpClient.PostAsync(webService, content).Result;