Невозможно сделать асинхронную публикацию Axios из React в Webform

Мне нужна помощь. У меня есть приложение для реагирования, которое использовало сообщение axios для веб-форм для запроса/отправки некоторых данных в бэкэнд. Простой вызов axios.post("path", data).

При первом сообщении axios ответ займет около 20 секунд (для ответа данных) Прежде чем первый пост будет завершен, пользователь может щелкнуть другой компонент реакции, который сделает еще один пост axios, который займет около 1 секунды (небольшие данные).

Вкладка сети Chrome Dev

В сети chrome dev, когда первое сообщение находится на рассмотрении, я вижу, что второе сообщение, которое должно было занять всего 1 секунду, вместо этого потребовало на 1 секунду больше времени, чем первое сообщение axios для ответа. Например: первая аксиальная почта заняла 20 секунд, вторая аксиальная почта заняла 21 секунду.

Скриншот вкладки сети chrome dev -> https://imgur.com/a/Op1uyqb
+Отметка красным цветом — это второй пост.
+Отметить синим цветом первый пост.

Мой вопрос

Предполагается ли, что второй пост будет продолжен только после завершения первого поста? Кажется, я не могу использовать axios.all в моем случае, есть ли способ сделать axios публиковать асинхронно?

EG: Когда пользователь нажимает на другой компонент, когда первое сообщение ожидает ответа, сообщение другого компонента также должно занять всего 1-2 секунды.

Я ожидаю, что второй пост, которому обычно требуется всего около 1-2 секунд, чтобы получить ответ, сможет работать нормально, даже когда первый пост ожидает ответа.

Заранее спасибо.

Это поведение браузера. Существует ограничение на количество сетевых вызовов. Может быть, у вас есть больше запросов до 1-секундного запроса. Axios поддерживает отмену запроса, которую вы можете изучить, чтобы отменить существующий запрос, когда он вам не нужен.

Panther 28.06.2019 08:23

Привет @Panther, насколько я понимаю, у Chrome есть ограничение в 6 сетевых вызовов. Когда это произойдет, последующий сетевой вызов будет иметь над ними серую полосу (остановлен), или я неправильно понимаю? По вашему предложению после повторной проверки я подтвердил, что это единственные несколько сетей, которые в настоящее время запрашивают.

Unknowz 28.06.2019 08:51
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
2
77
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я обнаружил, что проблема связана с сеансом веб-формы aspx в соответствии с http://hogaf.github.io/archive/2014/11/13/why-asp.net-requests-are-processed-sequentially. Я добавил enablesessionstate в readonly, что-то вроде: <%@ Page EnableSessionState="ReadOnly">, и запрос больше не будет зависать.

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

Другие вопросы по теме