Запрос отменен - ​​что это и почему?

Я пытаюсь сделать ajax-запрос к какой-либо службе журналирования, используя jQuery, запрос инициируется нажатием ссылки на странице, но иногда я вижу в инструментах разработчика, что запрос получает статус "отменен".

  1. Это из-за состояния гонки? При нажатии на ссылку страница выгружается, и если цикл запрос-ответ еще не завершен, он отменяется?
  2. Если так, что это значит, отменено? Я знаю, что не получаю ответ, и меня это не волнует (в любом случае в этом ответе не отправляется ценная информация), но могу ли я рассчитывать на запрос, поступивший на сервер?

Спасибо

1 ответ

Да, это будет отменено. Если пользователь нажимает на ссылку, начинается загрузка URL ссылки. Когда URL ответит первым байтом, тогда все ajax-запросы на текущей странице будут немедленно отменены и перейдут к URL-адресу.

Если вы хотите обеспечить журналы, вы должны использовать javascript, чтобы отменить событие щелчка ссылки по умолчанию и ведение журнала, а затем перейти к URL-адресу после завершения ведения журнала.

<a href="http://example.com" id="link1">Some Link</a>

<script>
$('#link1').on('click', function (e) {
  e.preventDefault();
  $.get('/path/to/logging', function () {
    // move to the URL after logging
    location.href = this.href;
  });
});
</script>
Другие вопросы по тегам