Почему IIS не поддерживает разделенное на блоки кодирование передачи?

7
задан T.Rob 21 December 2011 в 20:09
поделиться

3 ответа

Мое понимание - то, что разделенное на блоки кодирование может только использоваться в ответе HTTP. Разделенное на блоки тело запроса имело бы свойство того, чтобы быть несовместимым с 1,0 серверами, и в любом случае, не будет никакого способа агента пользователя, зная, что сервер был 1,0 серверами, пока это уже не отправило запрос.

, Но я соглашаюсь, что это неясно из документации.

4
ответ дан 6 December 2019 в 23:15
поделиться

Мое единственное предположение, они не реализовали его из опасений за безопасность. В наивном решении было бы легко настроить DoS-атаку путем запуска нескольких разделенных на блоки передач, которые это никогда не заканчивает. И сложное решение, которое могло составлять DoS-атаку, вероятно, не стоит усилия.

, Конечно, я не могу говорить за Apache или IIS, можно быть в состоянии связаться с командой Apache непосредственно хотя: http://httpd.apache.org/bug_report.html

я соглашаюсь с MarkR, что всегда думал, что разделенное на блоки кодирование могло только использоваться в качестве ответа, но уверенная документация заставляет его казаться, что это может использоваться в запросе или ответе.

-1
ответ дан 6 December 2019 в 23:15
поделиться

Взгляните на своего клиента.

И IIS, и Apache поддерживают запросы POST с использованием фрагментированного кодирования передачи. Вы можете проверить это с помощью утилиты curl :

curl <upload-url> --form "upfile=@<local_file>" --header "Transfer-Encoding: chunked"

Убедитесь, что передача разбита на фрагменты, используя Wireshark

7
ответ дан 6 December 2019 в 23:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: