2017-04-24 135 views
1

我返回整个HTML作为ajax请求的响应(不只是一个数组作为JSON)。所以,如你所知,响应会比大一点(比JSON)。因为它包含了一些更多的东西,如html标签,html属性等...所以到如何压缩ajax请求的响应?

  • 增加可伸缩性(降低服务器负载)。
  • 网络带宽较低(成本较低)。
  • 更好的用户体验(更快)。

我想压缩响应。像.gzip格式。基于这样的测试,这是一个Ajax响应的大小:

enter image description here

这是拉上一个Ajax响应的大小:

enter image description here

看到了吗?他们在他们的尺寸上有很大的不同。


所有我想知道的,是可以压缩的方式Ajax请求的响应并将其转换为客户端上的一个普通的文本?为此,我需要在Web服务(如nginx)配置中进行一些更改吗?或者它会自动执行?

+0

您是否已[在Nginx中启用gzip压缩](http://nginx.org/en/docs/http/ngx_http_gzip_module.html)? –

+0

@LarsBeck如果我这样做了,那么所有的ajax响应都会自动gzip? – stack

+0

Nginx将压缩几乎所有的东西https://www.nginx.com/resources/admin-guide/compression-and-decompression/ –

回答

0

您可能想查看一些其他的StackOverflow文章,以及维基百科链接&关于Deflate & Gzip的文章。这里有一些链接供您阅读。他们有一些有趣的图表&信息在其中:

  1. StackOverflow: Why Use Deflate Instead of Gzip for Text Files Served by Apache
  2. StackOverflow: Is There Any Performance Hit Involved In Choosing Gzip Over Deflate For- HTTP.com
  3. Wikpedia: Deflate
  4. Wikipedia: Gzip
  5. Article: How to Optimize Your Site with GZip Compression
  6. RFC: Deflate