2011-04-05 119 views
2

有与此控制器示例ASP.NET项目:用wget下载chunked资源?

using System; 
using System.Collections.Generic; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 

public partial class _Default : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     Response.Write("test1234"); 
     Response.Clear(); 
     Response.Flush(); 
     Response.Write("test5"); 
     Response.End(); 
    } 
} 

在浏览器(Chrome 10)我看 “TEST5” 和 传输编码:分块

当试图用wget来下载(从最近的Cygwin)我得到

$ wget -S --read-timeout=60 http://127.0.0.1/EmptyWebSite/test/ 
--2011-04-05 23:25:51-- http://127.0.0.1/EmptyWebSite/test/ 
Connecting to 127.0.0.1:80... connected. 
HTTP request sent, awaiting response... 
    HTTP/1.1 200 OK 
    Server: Microsoft-IIS/5.1 
    Date: Tue, 05 Apr 2011 20:25:51 GMT 
    X-Powered-By: ASP.NET 
    X-AspNet-Version: 2.0.50727 
    Cache-Control: private 
    Content-Type: text/html 
Length: unspecified [text/html] 
Saving to: `index.html' 

[ <=> ] 0   --.-K/s in 0s 

并将该文件(显然)空

这是怎么回事错误?我可以用wget/curl下载这样的资源吗?

回答

4

不与WGET。从bugs.debian.org

Wget的具有分块传输编码零支持(并且因此,对于 HTTP/1.1)。它只会发送HTTP/1.0请求,这意味着一个 HTTP/1.1响应是非法的(就像分块编码一样)。

卷曲支持HTTP/1.1

0

啊,跟 卷曲-v URL解决...

3

Wget的具有支撑的HTTP/1.1和分块,因为版本传递1.13