Когда браузер отправляет полезную нагрузку HTTP отдельно от Запроса HTTP?

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

2
задан 6 December 2011 в 01:50
2 ответа

Как создаются рассматриваемые POST-запросы - те, которые передаются через XMLHTTPRequest, то есть AJAX?

POST-запросы AJAX отправляют заголовки и тело как минимум как два отдельных TCP-пакета.

Несколько лет назад в сети разработчиков Yahoo есть сообщение об этом в блоге.

1
ответ дан 3 December 2019 в 10:14

Это случайно и непредсказуемо, и, если вам не все равно, вы делаете что-то ужасно неправильное.

Поскольку сервер использует наивную реализацию HTTP, он проверяет только первый пакет HTTP-запроса , и пропускает аргументы, отправленные во втором пакете. Это приводит к сбою запроса.

Я не могу понять, что вы пытаетесь там сказать. Если он действительно просматривает пакеты, это реализация TCP, а не HTTP (поскольку пакеты являются пакетами в соответствии со спецификацией TCP). Разумная реализация HTTP никогда бы не смотрела на пакеты вообще.

Если вы действительно имеете в виду, что HTTP-сервер просматривает пакеты, то он должен восстановить поток данных TCP, а затем следовать протоколу HTTP. Конец HTTP-запроса отмечен двумя в потоке байтов TCP. Любой другой метод определения конца HTTP-запроса не работает.

Поскольку первый пакет не содержит последовательности HTTP-завершения запроса, он явно не может содержать весь запрос.

HTTP-сервер должен следовать Спецификация HTTP, или это не HTTP-сервер. Спецификация HTTP только указывает, какие байты идут в поток данных TCP. В нем ничего не говорится о сегментации, что хорошо, потому что на практике приложения не могут это контролировать. Он определяет, как определяется конец запроса, и код, который не соответствует этой спецификации, является , а не HTTP-сервером. Он реализует протокол, подобный HTTP, который может быть совместим или несовместим с HTTP.

он явно не может содержать весь запрос.

HTTP-сервер должен соответствовать спецификации HTTP, в противном случае это не HTTP-сервер. Спецификация HTTP только указывает, какие байты идут в поток данных TCP. В нем ничего не говорится о сегментации, что хорошо, потому что на практике приложения не могут это контролировать. Он определяет, как определяется конец запроса, и код, который не соответствует этой спецификации, является , а не HTTP-сервером. Он реализует протокол, подобный HTTP, который может быть совместим или несовместим с HTTP.

он явно не может содержать весь запрос.

HTTP-сервер должен соответствовать спецификации HTTP, в противном случае это не HTTP-сервер. Спецификация HTTP только указывает, какие байты идут в поток данных TCP. В нем ничего не говорится о сегментации, что хорошо, потому что на практике приложения не могут это контролировать. Он определяет, как определяется конец запроса, и код, который не соответствует этой спецификации, является , а не HTTP-сервером. Он реализует протокол, подобный HTTP, который может быть совместим или несовместим с HTTP.

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

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

3
ответ дан 3 December 2019 в 10:14

Теги

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