繁体   English   中英

REST API放置大数据

[英]REST API Put large data

我在Microsoft Web API中实现了REST API。
在我的客户端,我使用HttpRequestMessage和HttpResponseMessage。
当我发送一个小类时,我将它序列化为JSON然后发送它。
很快,我的班级变得更大,我需要JSON这个类,压缩它(在内存中)并发送到服务器。 我不能再使用相同的技术,我需要发送块的zip。

实现它的正确方法是什么? 我已经阅读了这篇文章, 将文件和相关数据发布到RESTful WebService,最好是JSON

需要一些好文章,我不知道从哪里开始。

在客户端,这应该是开箱即用的...

        var httpClient = new HttpClient();

        httpClient.DefaultRequestHeaders.TransferEncodingChunked = true;

        var content = new CompressedContent(new StreamContent(new FileStream("c:\\big-json-file.json",FileMode.Open)),"UTF8");

        var response = httpClient.PostAsync("http://example.org/", content).Result;

您可以在WebApiContrib中找到CompressedContent的实现 如果您使用的是早于.net 4.5,请求将在发送之前缓冲客户端。 不幸的是,底层的HttpWebRequest在.net 4.5之前不支持缓冲流式传输

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM