Максимальный размер строки состояния HTTP-ответаC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Максимальный размер строки состояния HTTP-ответа

Сообщение Anonymous »

Краткий вопрос: существует ли максимальный размер строки состояния HTTP-ответа?

В RFC я не смог найти эту информацию, просто что-то вроде этого :


Строка состояния = HTTP-версия SP Код состояния SP Фраза причины CRLF


В соответствии с этим я мог бы предположить:
  • HTTP-версия обычно имеет размер 8 байт (например, HTTP/1.1 )
  • Код состояния — 3 байта.
  • 2 пробела + CRLF — 4 байта.
  • Фраза-причина -> Самая длинная в соответствии с RFC — запрошенный диапазон невыполним, поэтому 31 байт
Это будет сумма в 46 байт.

Правильно ли это предположение или я что-то пропустил?

ОБНОВЛЕНИЕ:< /p>

В связи с ответом ниже я просто хочу немного конкретизировать свою проблему:

Я анализирую какой-то файла журнала с TCP-сообщениями с сервера. Теперь есть некоторые случайные данные, которые мне не нужны, и несколько HTTP-сообщений, которые я хочу прочитать. Теперь все данные, которые я получаю, я анализирую на предмет \r\n, чтобы найти строку состояния. Поскольку мне нужно предположить, что мой заголовок разделен на несколько пакетов TCP, я просто буферизирую все данные и анализирую их.

Если не существует максимального размера строки состояния заголовка, мне нужно буферизовать все данные до тех пор, пока не произойдет следующий \r\n. В худшем случае это означает, что я сохраняю килобайты вместо килобайт случайных данных, поскольку они могут (но, скорее всего, не будут) быть частью строки состояния заголовка.

Или в этом случае было бы целесообразнее анализировать строку версии HTTP вместо CRLF?

Подробнее здесь: https://stackoverflow.com/questions/951 ... ximum-size
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»