0

可能重复:
是否可以强制 jQuery 对启用了 gzip/deflate 的 URL 进行 AJAX 调用?

我正在使用 jsonp 跨越两个不同的域。Domain1 使用带有回调参数的 $.getJSON 向 Domain2 询问一些 json 数据,效果很好,没有问题。

Domain2 还可以提供压缩后的 json 数据。

我想利用这个特性,但我不知道如何使用 jQuery 的 $.getJSON 从 Domain1 请求它。

这可能吗?如果可以,请给我一个例子(或任何其他解决方法)。

谢谢!

4

2 回答 2

1

gzip 压缩您的 http 流量是一个服务器选项,它对处理内容的实际进程(在您的情况下是您的脚本)是透明的。浏览器负责 gzip 压缩,但只有在连接的双方都支持它时才会起作用(这在请求标头中进行了通信)。您还必须在服务器端启用它(例如在 apache 中使用 mod_deflate)

您声明 domain2 上的服务器支持 gzipping,因此如果您正确配置它,所有“gzippable”的流量都将自动 gzip。您不需要额外的工作。

如果您想知道您的流量是否被压缩,请查看您的 jsonp 调用的响应标头。他们应该说使用了gzip。例如,您可以在 chrome 中执行此操作。

于 2012-05-14T21:35:02.240 回答
0

I don't think there is a way to tell your browser what to do in this case. If this is a JSONP request we are talking about, then it is up to your browser deciding which headers get sent. A JSONP request is just another <script> tag.

于 2012-05-14T21:27:29.433 回答