Принудительно заставить браузер отправлять AJAX данные тела POST / PUT, используя «Transfer-Encoding», «chunked» на сервер - PullRequest
0 голосов
/ 18 марта 2020

Как заставить браузер отправлять большое тело POST JSON в виде «Transfer-Encoding», «chunked», а не Content-Length?

Мы обновили сервер Tomcat 9 с поддержкой HTTP2. С тех пор, когда браузер или любой клиент публикует огромную полезную нагрузку (content-length: 66209), сервлет Tomcat, который мы имеем при получении частичного тела, и синтаксический анализ JSON завершается с преждевременным концом файла. Есть ли способ заставить браузер выполнить запрос POST (НЕ ОТВЕТИТЬ от AJAX) AJAX тело с 'Transfer-Encoding', 'chunked' Content-Length со сжатием gzip? Любая помощь очень ценится. Я сталкиваюсь с запросом PUT / POST Tomcat, получающим частичные данные, когда полезная нагрузка велика

Мы попытались включить заголовок "'Transfer-Encoding', 'chunked'" в вызов ajax, но это было проигнорировано, как вы можете видеть ниже.

HTTP DEV Заголовки инструмента:

:authority: 10.40.167.2
:method: POST
:path:  /XXXX/YYYY
:scheme: https
accept: application/json
accept-encoding: gzip, deflate, br
accept-language: en-US,en;q=0.9
cache-control: no-cache
content-encoding:gzip
content-length:66209
content-type:application/json
origin:https://10.40.167.2
pragma:no-cache
referer:https://10.40.167.2/versa/
sec-fetch-dest:empty
sec-fetch-mode:cors
sec-fetch-site:same-origin
user-agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36
x-csrf-token:D277BBFD8FD807DB86AD6776834DA0EE
x-requested-with:XMLHttpRequest
...