В настоящее время я занимаюсь разработкой приложения для сервера HTTP и борюсь с размером полезных данных тела.
В соответствии со спецификацией (а также Что такое поле «Content-Length» в заголовке HTTP? ), заголовок HTTP Content-Length
содержит фактическое количество байтов полезной нагрузки всего тела.
Теперь, скажи, что я стреляю так:
curl --header "Content-Type: text/plain" --request POST --data 'test' http://localhost:5555/
мой сервер получит заголовок Content-Length
, который содержит значение 4
. Поскольку я отправляю строку, и строка, содержащая нулевой байт, будет иметь 5 байтов, я ожидаю, что Content-Length
будет 5
, а тело запроса будет также содержать нулевой байт.
Мое предположение неверно? Или это какая-то проблема с завитками? Я попытался с другим инструментом (Paw на Mac), который на самом деле имеет опцию отправки текстовых полезных данных, с тем же результатом.