Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   [DELPHI] Chunked-декодирование HTTP ответа (https://forum.antichat.xyz/showthread.php?t=144531)

GlooK 29.09.2009 22:09

[DELPHI] Chunked-декодирование HTTP ответа
 
Необходимо реализовать chunked декодирование ответа от сервера.

Код:

HTTP/1.1 200 OK
Server: nginx/0.7.59
Date: Tue, 29 Sep 2009 17:52:03 GMT
Content-Type: text/html; charset=windows-1251
Transfer-Encoding: chunked
Connection: keep-alive
X-Powered-By: PHP/5.2.6-1+lenny3
Pragma: no-cache
Cache-control: private, must-revalidate

3ee4

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
...

Спецификация примерно такая:

Код:

HTTP/1.1 200 OK
...
Transfer-Encoding: chunked
...
<CRLF>
<SIZE-CHUNKED-DATA-IN-HEX>
<CRLF>
<CHUNKED-DATA>
<CRLF>
<SIZE-CHUNKED-DATA-IN-HEX>
<CRLF>
<CHUNKED-DATA>
<CRLF>

<SIZE-CHUNKED-DATA-IN-HEX> - это размер порции данных, в нашем случае 3ee4 (HEX) = 16100 (DEC)
<CHUNKED-DATA> - порция данных

P.S. Также важно определить, требуется ли кодирование. Думаю, если искать в тексте "Transfer-Encoding: chunked", то любая страница содержащая такой текст будет считаться кодированой.

Помогите, плиз, а то уже голова не варит :(


Время: 20:41