Последующие Ax ios запросы POST занимают все больше и больше времени. Сначала это происходит быстро, однако через некоторое время это займет больше времени (я измерил запрос, поместив console.time()
, прежде чем я сделаю axios.post
, а затем console.timeEnd()
в ответ .then
.
Журнал консоли показывает мне увеличенное время, которое поддерживается визуальной задержкой внешнего интерфейса. Запрос на публикацию не отправляет никакой полезной нагрузки (однако у меня есть JWT в заголовках Ax ios). Я делаю нормальный axios.post("endpoint")
, поэтому я не знаю если добавление кода будет иметь любую ценность. Для простоты предположим, что каждый раз, когда я нажимаю кнопку, он отправляет запрос.
Важно отметить, что проблема наблюдается только при использовании Экземпляр ax ios. Если я просто использую пакет ax ios по умолчанию, т.е.
import axios from 'axios'
Тогда я не вижу никаких заметных проблем, все работает нормально, как ожидалось .
ПРИМЕЧАНИЕ. Я импортирую экземпляр Ax ios с кодом ниже:
import axios from "axios";
const instance = axios.create({}); // ALSO NOTE I HAVE SET HEADERS INSIDE THERE TOO AS AN ALTERNATIVE
// BUT THE ISSUE PERSISTED
(function () {
const token = localStorage.getItem("token"); //I HAVE CHECKED TO MAKE SURE THIS IS ONLY EXECUTED ONCE
if (token) {
instance.defaults.headers.common["auth-token"] = token;
}
})();
export default instance;
И этот код импортируется в мое промежуточное ПО следующим образом:
import axios from "../axios-instance"
Так все ни mal с этой точки зрения.
Вот наблюдения, которые я наблюдал до сих пор:
Предположим, что запрос занимает 1-2 СЕКУНДЫ через 5-6 секунд (есть постепенное увеличение примерно от 50 мс до 2000, и он становится больше, но я обычно останавливаюсь на этом)
Как только я обновляю sh страницу, цикл повторяется (первый запрос выполняется быстро, а следующий занимает больше времени и т. д.).
Проблема наблюдается только тогда, когда один пользователь делает последующие запросы (запросы нескольких пользователей не влияют друг на друга).
Код был протестирован с разными конечными точками, а также с использованием и vanilla JS XML HTTP-запросов, и проблема НЕ наблюдалась.
Только я хранить токен JWT в моем локальном хранилище, насколько это возможно.