我正在尝试从一个来源下载feed.xml。我成功地能够在Windows中下载它。虽然它在linux / unix机器上失败了。
这些是我的窗口上的请求标头和响应标头。
Response Header: Connection keep-alive
Content-Disposition attachment; filename="feeds.xml";
Content-Type text/xml
Date Wed, 24 Dec 2014 04:18:59 GMT
Expires Mon, 1 Jan 2000 00:00:00 GMT
Server nginx/1.2.3
Transfer-Encoding chunked
X-Powered-By PHP/5.3.13
Request: Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding gzip, deflate
Accept-Language en-US,en;q=0.5
Connection keep-alive
Host www2.xyz.com
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.0
我的linux / unix代码/命令从url下载文件。
wget --no-check-certificate -O feed.xml 'http://www2.xyz.com/feed.php?id=XXX-YYY&pass=*******'
在Windows中,它的大小是980MB,而linux的大小是12MB。如果我正在尝试less feed.xml
,那么它会在linux / Unix中显示此消息。
"feed.xml" may be a binary file. See it anyway?
我也试过设置标题,它给了我这样的响应,但没有下载完整的文件。
wget -S --header="Accept-Encoding: gzip" 'http://www2.xyz.com'
Connecting to www2.XYZ.com|***.**.**.**|:80... connected.
HTTP request sent, awaiting response...
HTTP/1.1 200 OK
Server: nginx/1.2.3
Date: Wed, 24 Dec 2014 03:50:51 GMT
Content-Type: text/xml
Content-Length: 12252156
Connection: keep-alive
X-Powered-By: PHP/5.3.13
Expires: Mon, 1 Jan 2000 00:00:00 GMT
Content-encoding: gzip
Content-disposition: attachment; filename="feeds.xml";
Length: 12252156 (12M) [text/xml]
如何解决此问题,可以在linux下载feed.xml。请帮助。
答案 0 :(得分:3)
标题信息显示内容编码是gzip。可能是因为Windows上的gzip为你扩展了这个,而且在Linux上它并没有用你的压缩文件。
尝试这样做:
gzcat feed.xml > feed_expanded.xml
或者如果你没有gzcat:
mv feed.xml feed.xml.gz; gunzip feed.xml.gz