HTTP-запросы имеют тело, если они имеют заголовок Content-Length или Transfer-Encoding ( RFC 2616 4.3 ). Если запрос не имеет ни того, ни другого, он не имеет тела, и ваш сервер должен обработать его как таковой.
Это сказало, что для запроса PUT необычно отсутствие тела, и поэтому, если бы я проектировал клиента, который действительно хотел бы отправить пустое тело, я бы передал Content-Length: 0. Действительно, в зависимости от чтения Из определений методов POST и PUT ( RFC 2616 9.5, 9.6 ) можно утверждать, что тело подразумевается как обязательное, но разумным способом обработки тела не должно быть тело нулевой длины.