如何从Java发送压缩(gzip)JSON作为对Ajax请求的响应?

如何从Java发送压缩(gzip)JSON作为对Ajax请求的响应?,java,javascript,ajax,json,gzip,Java,Javascript,Ajax,Json,Gzip,作为对Ajax请求的响应,我想从Java程序发送压缩的JSON,即Gzip格式的JSON。我知道,我需要将响应头中的内容编码设置为gzip,但这就是我需要做的全部吗?您还需要确保 a) 您的客户端(浏览器或应用程序)接受此gzip编码并可以处理它 b) 默认情况下,服务器(java应用程序的容器)配置为发送gzip响应。如果服务器配置为发送gzip响应,则内容类型头很可能由服务器本身设置 除了设置内容编码头之外,服务器端代码还应该gzip响应。你可以看一下。谢谢大家的意见。我使用了以下方法使它工

作为对Ajax请求的响应,我想从Java程序发送压缩的JSON,即Gzip格式的JSON。我知道,我需要将响应头中的内容编码设置为gzip,但这就是我需要做的全部吗?

您还需要确保 a) 您的客户端(浏览器或应用程序)接受此gzip编码并可以处理它
b) 默认情况下,服务器(java应用程序的容器)配置为发送gzip响应。如果服务器配置为发送gzip响应,则内容类型头很可能由服务器本身设置

除了设置内容编码头之外,服务器端代码还应该gzip响应。你可以看一下。

谢谢大家的意见。我使用了以下方法使它工作

在my application web.xml中,添加了以下筛选器:

<filter>
    <filter-name>GZipFilter</filter-name>
    <filter-class> org.mortbay.servlet.GzipFilter</filter-class>
    <init-param>
        <param-name>mimeTypes</param-name>
        <param-value>application/json</param-value>
    </init-param>
</filter>

<filter-mapping>    
    <filter-name>GZipFilter</filter-name>
    <url-pattern>*.data</url-pattern>
</filter-mapping>

GZipFilter
org.mortbay.servlet.gzip过滤器
模版
应用程序/json
GZipFilter
*.数据
在servlet.xml中,向DataViewController bean添加了以下bean属性

<beans:property name="contentType" value="application/json" />