Может HTTP POST быть безграничным?

Я слышал, что HTTP, POST не имеет никакого допустимого предела в размере данных, которым он может быть отправлен. Это верно или является там просто некоторым действительно высоким пределом?

65
задан Justin Batch 14 March 2019 в 06:01
поделиться

5 ответов

РЕДАКТИРОВАТЬ (2019) Этот ответ сейчас довольно избыточен, но есть другой ответ с более важной информацией.

Это скорее зависит от веб-сервера и веб-браузера:

Internet Explorer Все версии 2GB-1
Mozilla Firefox Все версии 2GB-1
IIS 1-5 2GB-1
IIS 6 4GB-1

Хотя IIS по умолчанию поддерживает только 200 КБ, в метабазу необходимо внести поправки, чтобы увеличить это значение.

http://www.motobit.com/help/scptutl/pa98.htm

Сам метод POST не имеет ограничений на размер данных.

54
ответ дан 24 November 2019 в 15:24
поделиться

HTTP может не иметь верхнего предела, но веб-серверы могут его иметь. В ASP.NET есть ограничение по умолчанию, равное 4 МБ, но вы (разработчик / веб-мастер) можете изменить это значение на большее или меньшее.

0
ответ дан 24 November 2019 в 15:24
поделиться

Согласно этой (теперь удаленной) статье, разные веб-серверы IIS могут обрабатывать разные объемы данных в «заголовке»; http://classicasp.aspfaq.com/forms/what-is-the-limit-on-form/post-parameters.html ;

Обратите внимание, что нет ограничений на количество элементов FORM, которые вы можете передать через POST, но только в совокупности размер всех пар имя / значение. В то время как GET ограничен 1024 символов, данные POST ограничены 2 МБ на IIS 4.0 и 128 КБ на IIS 5.0. Каждое имя / значение ограничено 1024 символы, как предписано SGML спец. Конечно, это не относится к файлы загружены с использованием enctype = 'multipart / form-data' ... Я не было проблем с загрузкой файлов в диапазоне 90–100 МБ с использованием IIS 5.0, помимо необходимости увеличения значения server.scriptTimeout, а также мое терпение!

2
ответ дан 24 November 2019 в 15:24
поделиться

Согласно самому протоколу HTTP, ограничений нет, но реализации будут иметь практический верхний предел. Я отправлял в Apache данные, превышающие 4 ГБ, используя POST, но некоторые серверы в то время имели ограничение в 4 ГБ.

26
ответ дан 24 November 2019 в 15:24
поделиться

POST позволяет отправлять данные произвольной длины на сервер, но есть ограничения, основанные на тайм-аутах / пропускной способности и т. Д.

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

5
ответ дан 24 November 2019 в 15:24
поделиться
Другие вопросы по тегам:

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