|
@@ -499,18 +499,23 @@ class Http {
|
|
headers.pop();
|
|
headers.pop();
|
|
responseHeaders = new Hash();
|
|
responseHeaders = new Hash();
|
|
var size = null;
|
|
var size = null;
|
|
|
|
+ var chunked = false;
|
|
for( hline in headers ) {
|
|
for( hline in headers ) {
|
|
var a = hline.split(": ");
|
|
var a = hline.split(": ");
|
|
var hname = a.shift();
|
|
var hname = a.shift();
|
|
var hval = if( a.length == 1 ) a[0] else a.join(": ");
|
|
var hval = if( a.length == 1 ) a[0] else a.join(": ");
|
|
- responseHeaders.set(hname,hval);
|
|
|
|
- if( hname.toLowerCase() == "content-length" )
|
|
|
|
- size = Std.parseInt(hval);
|
|
|
|
|
|
+ responseHeaders.set(hname, hval);
|
|
|
|
+ switch(hname.toLowerCase())
|
|
|
|
+ {
|
|
|
|
+ case "content-length":
|
|
|
|
+ size = Std.parseInt(hval);
|
|
|
|
+ case "transfer-encoding":
|
|
|
|
+ chunked = (hval.toLowerCase() == "chunked");
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
onStatus(status);
|
|
onStatus(status);
|
|
|
|
|
|
- var chunked = responseHeaders.get("Transfer-Encoding") == "chunked";
|
|
|
|
var chunk_re = ~/^([0-9A-Fa-f]+)[ ]*\r\n/m;
|
|
var chunk_re = ~/^([0-9A-Fa-f]+)[ ]*\r\n/m;
|
|
chunk_size = null;
|
|
chunk_size = null;
|
|
chunk_buf = null;
|
|
chunk_buf = null;
|