在 C# asp.net 中压缩字符串并在 JavaScript 中解压缩

Compressing a string in C# asp.net and decompressing it in JavaScript

我有一个字符串,大约有 200 000 个字符长。这个字符串中有很多重复。我想知道是否有一种方法可以压缩这个字符串服务器端 (c#),一旦我收到客户端 (JS),我就解压这个字符串。

数据示例:

是的,您可以选择任何您想要的压缩算法,在 C# 中实现该算法进行压缩,然后在 javascript 中再次进行解压。在 C# 和 JavaScript 之间切换不会给您带来任何困难,除了您当然需要用两种语言实现它之外。

推荐你搜索LZ压缩算法

我不知道 Javascript 本身(通过库)使用压缩数据的能力如何,但是 它不需要

当你对数据服务器端进行GZip并将"Content-Encoding"header值设置为"gzip"时,浏览器会在将其交给你的js代码之前对其进行解压缩。所以你有运输尺寸小和解压速度快的好处。

通过检查请求 header 值 "Accept-Encoding" 预先检查浏览器是否可以执行此操作。如果包含 "gzip"(这是通常情况),那么浏览器将对其进行解码。

进一步阅读(特定于 WebApi): http://blog.developers.ba/asp-net-web-api-gzip-compression-actionfilter/http://benfoster.io/blog/aspnet-web-api-compression