C# 如何在纯文本上传中使用gzip内容编码?

C# 如何在纯文本上传中使用gzip内容编码?,c#,asp.net,http-post,content-encoding,C#,Asp.net,Http Post,Content Encoding,我的情况是 用户需要下载大文本文件(1-15 MB)CSV文件 使用Excel编辑后, 按原样重新上传(已编辑CSV) 在同一页面中使用web浏览器访问网站。 gzip编码已应用于下载 发送给用户的内容是gzip压缩的(通过firebug查看) 问题是 当用户重新上传已编辑的文件时, 它作为非压缩文本传输(是吗?)。 用户带宽有限(上传速度约为50-128 KBps) 以及相当大的用户群(超过100个并发用户) 将迫使站点降低到不可接受的性能(超过一分钟的响应时间) 执行并发上载/下载时。 问题

我的情况是
用户需要下载大文本文件(1-15 MB)CSV文件
使用Excel编辑后,
按原样重新上传(已编辑CSV)
在同一页面中使用web浏览器访问网站。

gzip编码已应用于下载
发送给用户的内容是gzip压缩的(通过firebug查看)

问题是 当用户重新上传已编辑的文件时,
它作为非压缩文本传输(是吗?)。
用户带宽有限(上传速度约为50-128 KBps)
以及相当大的用户群(超过100个并发用户)
将迫使站点降低到不可接受的性能(超过一分钟的响应时间)
执行并发上载/下载时。

问题: 如何制作客户端浏览器 通过HTTP Post发送文件上载
使用gzip内容编码和压缩
幕后

我们可以指示用户在上传之前压缩文件,
但是在可以生成各种存档文件格式的情况下
为用户添加的步骤是,采用“归档”不是一个可行的选择,

编辑 服务器端解压处理将增加负担
发送到已忙碌的服务器。

重新措辞 而各种格式的服务器端解压缩逻辑
将增加服务器端代码的复杂性
由于
通过使用压缩减少传输时间和带宽使用。

信息
  • 服务器:IIS
  • 使用ASP.NET MVC 3制作,
    Visual Studio 2010 C#4.0,
    DevExpress 12 MVC扩展,
    上载控制组件
类似的问题并不能给出期望的答案:

有些人甚至没有回答:

服务器端解压处理将给已经繁忙的服务器增加负担

使用gzip下载会更糟糕,通常压缩比解压缩更需要处理器

没有办法神奇地强制gzip进行上传,即使你管理了它,解压也总是由你说不想要的服务器完成


在我看来,您的解决方案根本无法满足您的服务需求。您可能不得不接受它,或者面临某种升级。

主要问题是用户范围内的连接速度慢,带宽配额有限,在客户端浏览器和服务器之间进行大量数据传输将阻塞服务器处理传入数据的响应。服务器端gzip压缩/解压缩可以减少双方的网络带宽使用,而客户端主要用于节省客户端时间和数据配额使用。似乎在任何人提供解决方案之前,我已经关闭了可能的解决方案。:)