Кажется, что nginx плохо поддерживает запросы по частям.Но я пытаюсь получить более точный (и актуальный) ответ.У меня есть клиент, делающий SOAP-запрос к серверу от клиента Java, который устанавливает заголовок Transfer-Encoding: chunked
.Все работает хорошо, когда я подключаюсь напрямую к своему приложению на Tomcat.
Но когда я помещаю nginx между ними, все ломается.
Чтобы добавить несколько деталей: я работаю с CloudFoundry.Я использую Micro Cloud Foundry, чтобы подтвердить, что в отсутствие nginx все работает как положено.Но мое требование - использовать cloudfoundry.com, поэтому у меня нет возможности обойти там nginx.
Этот вопрос и ответ говорят, что это, пожалуй, мой единственный обходной путь: http://wiki.nginx.org/NginxHttpChunkinModule. Но этот обходной путь недоступен, поскольку я не могу изменить конфигурацию на cloudfoundry.com.
Этот вопрос также выглядит аналогичным, но на самом деле он охватывает обратную сторону этого требования.,Он охватывает фрагментированные ответы, а не фрагментированные запросы.
Так как насчет каких-либо изменений на клиенте, чтобы обойти это?Можно ли отправить как Transfer-Encoding: chunked
, так и Content-Length: 123
как заголовки?Эта область является новой для меня, но из таких проектов, как Apache HttpComponents, кажется, что можно задать либо длину, либо порцию, но не оба.Смысл в том, что вам не нужно знать длину, когда начинается запрос.Могу ли я сказать своему клиенту использовать HTTP / 1.0 и хорошо играть с nginx без чанкинга?Есть ли другие идеи обойти, которые я забыл?