У меня есть клиент, который отправляет некоторые данные на наш сервер с помощью метода http POST. Наш сервер - смола 3.0 с java. Когда я отправляю ответ, сохранены ли данные или нет, длина содержимого ответа не задана. клиент использует библиотеку curl (обертка php поверх нее), и они получают длину содержимого как 0. Когда я пытаюсь отправить форму через браузер на наш сервер на том же URL-адресе, он работает и отображается ответ.Длина содержимого 0 в ответе http post в смоле 3.0
Я попытался использовать Apache HttpClient для отправки данных через postmethod, и я получил длину содержимого как -1, но я получил полный ответ. Я не могу понять, где проблема. Кроме того, я сделал несколько google и обнаружил, что смола делает некоторую кодированную кодировку при отправке ответа. Но я думаю, что он делает это также для метода GET. Но для метода GET мой клиент получает длину контента и также может получить ответ. Нужна помощь с этим.
Когда я устанавливаю длину содержимого вручную, я получаю сообщение об ошибке «Ошибка IllegalStateException» пыталась записать байты 30052 с длиной до 30036. Есть ли что-то, что нужно сделать с кодировкой смолы? – Shwetanka
При использовании «пакетного» кодирования передачи вы должны отрегулировать значение Content-Length, как определено ПОСЛЕ того, как были применены любые кодировки передачи. –