ответитьJS / Axios и иметь дело с длительным временем отклика с потоками может быть? - PullRequest
0 голосов
/ 29 ноября 2018

У меня есть Java-подпружиненный бэкэнд с некоторыми конечными точками для данных.

Одним из них является POST с несколькими параметрами, использующими axios.Проблема здесь в том, что запрос выполняется очень долго и полностью выполняется и отправляется со стороны сервера.POST необходимо проанализировать и передать параметры внутри приложения, а затем вычислить ответ.

Я возвращаю List<Object> (необходимо предварительно отсортировать)

Первая часть списка будетбудьте готовы через несколько секунд, но получение всего списка занимает минуты или даже десятки минут, в зависимости от параметров, которые были отправлены.

Итак, первая проблема заключается в том, что Axios бросает network error, что, как я полагаю, связано с очень долгим ответомвремя.(Уходит при использовании более коротких запросов). Вторая проблема заключается в том, что приложение кажется не отвечающим никому, кроме разработчиков.

Есть ли способ использовать какое-то решение Java Stream для отправки первой части ответа, когдав ожидании отдыха?Или, может быть, какое-то решение для нумерации страниц?

Я некоторое время гуглил, но пока не нашел хороших решений этой проблемы.

Вот часть контроллера для справки:

 @RequestMapping(value = "/contracts", method = RequestMethod.POST)
 public String Contracts(@RequestBody String req)  throws JsonProcessingException {

    //omitting parse JSON params from req string

    ObjectMapper objectMapper = new ObjectMapper();
    return objectMapper.writeValueAsString(DateRange.getDataForDateRange(param1, param2, param3));
}

Я понимаю, что это довольно широкий вопрос, но понимание способа или технологии, стоящей за этим, было бы очень полезно для всего, что я делаю:)

Спасибо!

1 Ответ

0 голосов
/ 04 декабря 2018

Су наконец-то получил мой ответ.

Нашел мой ответ с помощью класса Java под названием DeferredResult

Я не уверен, почему, но, кажется, вы не можете получить Любые ответы на вопросы сложнее, чем очень простые и очевидные вещи в SO ...

На этот вопрос я отвечаю сам после нескольких дней исследований ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...