[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", то любая страница содержащая такой текст будет считаться кодированой.
Помогите, плиз, а то уже голова не варит :(
|