Запрос, ожидающий выполнения после запроса DELETE
Я работаю с Reactjs и у меня возникла проблема при отправке запроса, на прошлой неделе все работало отлично, а потом я начал сталкиваться с этой проблемой. Когда я отправляю GET, PUT, POST запросы, все работает нормально без проблем, когда я отправляю DELETE запрос, он отправляется и я получаю ответ со статусом 204, но любой тип запроса, который я отправляю после, он навсегда остается в состоянии ожидания и никогда не достигает внутреннего сервера. Я устал от разных проектов, та же проблема, на разных ПК та же проблема. Когда я получаю доступ к своему серверу разработки с другого ПК, все работает идеально без проблем, похоже, что проблема возникает только тогда, когда я отправляю запрос с той же машины, на которой расположен сервер разработки. Я вытащил старую версию кода, где я был уверен, что все в порядке, и получил ту же проблему, я пытался очистить кэш, разные браузеры, я очистил весь диск и установил windows снова. Я попробовал запрос DELETE с помощью Postman, и он застрял в состоянии ожидания. Я пробовал разные бэкенды - та же проблема. Бэкэнд на Django, у меня нет доступа к коду бэкэнда, но я пробовал тот же самый процесс с Postman и не было никаких проблем.
api
.delete(`objet/front/${feature.get("featureID")}/`)
.then((res) => {
if (res.status === 204) {
layer.getSource().removeFeature(feature);
}
})
.catch((err) => {
console.log(err);
});
Попробуйте проверить, что ресурс, который вы пытаетесь удалить, все еще присутствует на сервере, если он удаляется, то вам просто нужно отправить запрос с таймаутом 5 или 10 секунд, и если что-то пойдет не так, это будет зарегистрировано в консоли, так как вы использовали catch в коде.
Попробуйте это:
api
.delete(`objet/front/${feature.get("featureID")}/`, {
timeout: 10000, // Set timeout to 10 or 5 seconds
})
.then((res) => {
if (res.status === 204) {
layer.getSource().removeFeature(feature);
}
})
.catch((err) => {
// Log the error you get to the console
console.log(err);
});