Насколько большой может быть строка параметра формы HTTP? - PullRequest
2 голосов
/ 16 января 2010

Насколько большой может быть строка параметра формы HTTP?

Если я хочу передать, скажем, пару страниц XML-значения, будет ли параметр формы в порядке? Или, если нет, мне нужно было бы рассматривать это как загрузку файла, чтобы быть уверенным?

Спасибо

Ответы [ 3 ]

3 голосов
/ 16 января 2010

Если вы отправляете контент через POST, а не как часть строки запроса в GET, универсального ограничения не существует. Некоторые серверы могут ограничивать POST-запросы определенным размером, чтобы снизить риск отказа в обслуживании, но в большинстве конфигураций серверов эти ограничения могут быть в диапазоне 1–8 мегабайт.

Как разработчик, вы, вероятно, сможете настроить это ограничение, если оно есть; в Rails механизм зависит от того, какой сервер приложений HTTP вы используете. Mongrel устанавливает его в Const :: MAX_BODY, я думаю.

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

0 голосов
/ 18 января 2010

Определенно существует ограничение как для клиента, так и для сервера.

Ограничения устанавливаются веб-браузером

Максимальная длина URL-адреса составляет 2 083 символа в Internet Explorer

http://support.microsoft.com/kb/208427/en-us

В веб-сервере IIS ограничение по умолчанию составляет 16 384 символа. Смотрите MaxFieldLength: http://support.microsoft.com/kb/820129/en-us

0 голосов
/ 16 января 2010

Если вы передаете их через этот метод POST, ограничений нет.

Если вы передаете их через GET-запрос, то предел изменяется в зависимости от браузера, программного обеспечения прокси, веб-сервера и т. Д .; как правило, вы должны быть уверены, что в вашем URL-адресе в целом содержится менее 2000 символов, чтобы быть в безопасности (в части пути URL-адреса IE есть ограничение в 2048 символов).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...