【发布时间】:2017-10-27 04:35:56
【问题描述】:
我从我的 MVC 应用上传了一个 3.5 MB 的文件。当我将该文件发送到我的 Web api 端点时,我注意到请求的内容长度是文件大小的两倍 (7 MB)。
我用一个 5 MB 的文件测试了这个理论,当我发送到 web api 时,内容长度果然是 10 MB。
下面是我如何将文件发送到我的 web api 端点:
using (HttpClient client = new HttpClient())
{
client.BaseAddress = new Uri(url);
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
return await client.PostAsync(requestUri, new StringContent(serializedContent, Encoding.Unicode, "application/json"));
}
我在 POST 方法中从我的 MVC 控制器调用此方法。为什么我的内容长度会加倍?
更新: 我应该注意我正在使用 JSON.NET 的 JsonConvert.SerializeObject 方法将包含字节数组的对象转换为字符串
【问题讨论】:
标签: model-view-controller json.net asp.net-web-api2