Вопрос по протоколу HTTP

Тема в разделе "WASM.HEAP", создана пользователем samba, 14 ноя 2005.

  1. samba

    samba New Member

    Публикаций:
    0
    Регистрация:
    24 авг 2003
    Сообщения:
    65
    Адрес:
    England
    После заголовка веб-сервер присылает тело документа, да? вроде везде так написано, мол сразу после CRLF двойного. но вот что мне присылает апачи. Как вы видете 8d - это видимо размер тела документа. Но в каких случаях это приходит? где почитать можно?
    Код (Text):
    1.  
    2. HTTP/1.1 200 OK
    3. Date: Mon, 14 Nov 2005 14:31:12 GMT
    4. Server: Apache/2.0.35 (Win32)
    5. X-Powered-By: PHP/4.3.0
    6. Connection: close
    7. Transfer-Encoding: chunked
    8. Content-Type: text/html; charset=WINDOWS-1251
    9.  
    10. 8d
    11. <form action="test.php" enctype="multipart/form-data" name="dsfgv" id="dsfgv]
    12. <input type="file" size="34]
    13. <input type="submit]
    14. </form>
    15. 0
    16.  
     
  2. flankerx

    flankerx New Member

    Публикаций:
    0
    Регистрация:
    2 июл 2004
    Сообщения:
    423
    Адрес:
    Moscow, Russia
    ключевое слово для поиска:
    Код (Text):
    1. Transfer-Encoding: chunked
     
  3. samba

    samba New Member

    Публикаций:
    0
    Регистрация:
    24 авг 2003
    Сообщения:
    65
    Адрес:
    England
    Transfer-Encoding: chunked

    тоесть если это присутствует в заголовке, то в теле документа идет его размер? вроде понял

    flankerx

    Спасибо за быструю помощь
     
  4. Sharp

    Sharp New Member

    Публикаций:
    0
    Регистрация:
    1 авг 2003
    Сообщения:
    143
    Адрес:
    Ukraine
    Не совсем, в теле документа идет размер следующего куска. Надо считать столько байт, затем строку с новым размером. Если новый размер равен нулю, чтение прекратить. Используется, если сервер не может сразу определить Content-Length. Подробнее следует почитать RFC.
     
  5. Guest

    Guest Guest

    Публикаций:
    0
    Может тема уже несколько устаревшая, но вот хотелось бы добавить, что фрагментация тела документа происходит только в версии протокола HTTP/1.1, юзая HTTP/1.0, приходит вполне нормальный, цельный документ.