维基百科服务器gzip内容

时间:2012-05-04 11:15:27

标签: php curl wikimedia

wikimedia api是否支持gzip编码。我正在使用curl来获取内容。我使用了accept gzip编码。但它似乎不起作用..

curl_setopt($ch,CURLOPT_ENCODING , "gzip");

3 个答案:

答案 0 :(得分:1)

您是否尝试添加'Accept-Encoding:gzip,deflate'以获取请求标头?我尝试了这个样本:

http://pastebin.com/AmndVB3e

它发送了gzip压缩内容。

答案 1 :(得分:0)

尝试(让我知道它是否有效,我不能从你的其他Curl选项中告诉自己)

curl_setopt($ch, CURLOPT_ENCODING, "deflate, gzip, identity");

答案 2 :(得分:0)

回答你的字面问题:是的,确实如此。

测试此方法的一种方法是安装Firebug并在“网络”标签处于活动状态时访问a MediaWiki API URL。您将看到的响应标题应如下所示:

HTTP/1.0 200 OK
Date: Mon, 07 May 2012 23:05:37 GMT
Server: Apache
X-Content-Type-Options: nosniff
Cache-Control: private
MediaWiki-API-Error: help
Content-Encoding: gzip
Vary: Accept-Encoding
Content-Length: 37421
Content-Type: text/html; charset=utf-8
X-Cache: MISS from sq59.wikimedia.org, MISS from amssq35.esams.wikimedia.org, MISS from amssq44.esams.wikimedia.org
X-Cache-Lookup: MISS from sq59.wikimedia.org:3128, MISS from amssq35.esams.wikimedia.org:3128, MISS from amssq44.esams.wikimedia.org:80
Connection: keep-alive

(不,这也不仅仅是因为维基百科的前端代理;我只是在我自己的wiki上尝试了相同的操作,它不在代理之后,并获得相同的Content-Encoding标题。)