OK. So far AFAIU from RFC2616, the algorithm is as follows:

If the request headers contains "TE: chunked" we understand that the client 
supports chunked encoding. According to the RFC, to be HTTP/1.1 compliant, 
servers MUST support this feature. Clients SHOULD.

Server replies with Transfer-Encoding: chunked in the response hader and NO 
content-length. Then it before sends the first packet, it sends the 
hexadecimal length of the packet:

<response header>\r\n
<sizeinHEX>\r\n
<packet/data>\r\n
<sizeinHEX>\r\n
<packet/data>\r\n
...
0\r\n (until the server says 0 length)

I will implement this feature in C++ next week and then post the code here 
so that you take a look, provide feedback and then translate to Delphi.

Thanks,

SubZ

----- Original Message ----- 
From: "Fastream Technologies" <[EMAIL PROTECTED]>
To: "ICS support mailing" <twsocket@elists.org>
Sent: Saturday, December 03, 2005 4:37 PM
Subject: Re: [twsocket] Chunked encoding with THttpCli


> Hi,
>
> Chunked is a transfer-encoding not content. It means there is no
> content-length in the response header and the client simply gets the (size
> of) each packet separately and then cuts the connection when the server
> tells so.
>
> Francois, any idea? Chunked encoding is a *must* for http/1.1 
> compatibility.
>
> Best Regards,
>
> SubZ
>
> ----- Original Message ----- 
> From: "Angus Robertson - Magenta Systems Ltd" <[EMAIL PROTECTED]>
> To: <twsocket@elists.org>
> Sent: Saturday, December 03, 2005 3:59 PM
> Subject: Re: [twsocket] Chunked encoding with THttpCli
>
>
>>> Does THttpCli support chunked encoding? If so, how do we indicate we
>>> can accept it from server?
>>
>> No.  If such an encoding actually exists, the latest client beta
>> supports content coding 'plugins', so you can write a new unit based on
>> the current GZIP coding version, and simply add it to the project, so it
>> will be automatically used by THttpCli and the Accept-Encoding: header
>> added to requests with whatever code is used for 'chunked'.
>>
>> Angus
>> -- 
>> To unsubscribe or change your settings for TWSocket mailing list
>> please goto http://www.elists.org/mailman/listinfo/twsocket
>> Visit our website at http://www.overbyte.be
>
> -- 
> To unsubscribe or change your settings for TWSocket mailing list
> please goto http://www.elists.org/mailman/listinfo/twsocket
> Visit our website at http://www.overbyte.be 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be

Reply via email to