Почему контроллер для приложения / формы не получает данные в параметре @RequestBody, когда размер запроса велик - PullRequest
0 голосов
/ 25 апреля 2020

В моем приложении SpringBoot есть следующий контроллер

    @RequestMapping(value="/{endPoint}", method= RequestMethod.POST,
        consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE})
public void downloadEndPointPost(
        @PathVariable String endPoint,
        HttpServletRequest request,
        HttpServletResponse response,
        @RequestBody Map formData
) throws Exception {

    if (LOGGER.isDebugEnabled()) {
        LOGGER.debug("downloadEndPointPost [APPLICATION_FORM_URLENCODED_VALUE] - endPoint: " + endPoint + " - formData: " + formData);
    }
}

Когда я отправлял небольшое количество данных в форме, переменная formData содержит правильные значения, однако когда я отправлял много данных, давайте скажем, около 3 МБ в данных, форма dataData пуста, а отправленные данные находятся в запросе InputStream.

Имеет ли ограничение для типа приложения / формы запрос объем данных, которые могут быть отправлены?

Кроме того, настройка размера пост-поста в Tomcat уже увеличилась, так что это не проблема

server.tomcat.max-http-post-size=6291456
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...