【发布时间】:2014-12-19 17:11:10
【问题描述】:
我正在使用 HttpClient 使用以下代码将文件上传到 WebAPI 资源。由于我使用的是 MultipartFormDataContent,因此请求消息内容类型设置为 multipart/form-data。在 WebAPI 中,我正在检查内容标头以仅允许文本/纯媒体类型。那么,如果我将 HttpClient 与 MultipartFormDataContent 一起使用,我应该在哪里设置文件类型的内容头。
try
{
var content = new MultipartFormDataContent();
string filePath = Server.MapPath("~/Content/" + "demo.txt");
var filestream = new FileStream(filePath, FileMode.Open);
var fileName = System.IO.Path.GetFileName(filePath);
content.Add(new StreamContent(filestream), "file", fileName);
var requestMessage = new HttpRequestMessage()
{
Method = HttpMethod.Post,
Content = content,
RequestUri = new Uri("http://localhost:64289/api/uploads/"),
};
var client = new HttpClient();
client.DefaultRequestHeaders.Add("Accept", "application/json");
HttpResponseMessage response = await client.SendAsync(requestMessage);
if (response.IsSuccessStatusCode)
{
///
}
}
catch (Exception e)
{
throw;
}
【问题讨论】:
标签: asp.net-mvc asp.net-web-api