У меня есть один вызов ajax, который подключается к базе данных, устанавливает один флаг в базе данных и ожидает создания одного файла другим процессом, который ищет флаг.
Пока файл не создан на сервере, ajax продолжает ждать. После создания файла ajax читает файл и отображает его содержимое.
Теперь проблема в том, что когда-нибудь бэкэнд-процесс, который создает файл, застрял в проблеме с сокетом и никогда не создавал файл, но ajax продолжает ждать в этом случае, который получает тайм-аут только тогда, когда происходит его тайм-аут,
Что все, что я хочу показать кнопку запроса остановки, которая может остановить текущий запрос Ajax, поскольку время ожидания велико, и пользователь может захотеть остановить его до истечения времени ожидания.
Вот то, что я попробовал, я изменил код, который отслеживает существование файла, и добавил проверку переменных сеанса, например, если Session ("AbortCheck") = true, а затем выйти из сценария.
и сделал еще один ajax-вызов, чтобы обновить переменную sessin, чтобы в цикле on, когда сценарий нашел session = true, он немедленно остановил запрос.
Во время отладки я обнаружил, что мой новый запрос ajax, который обновляет переменную сеанса, фактически выполняется только после завершения первого ajax. и поэтому он никогда не останавливался по запросу пользователя, чтобы остановить запрос.
Может ли кто-нибудь дать мне знать, как остановить работающий AJAX (что занимает много времени) при вводе пользователем?
Спасибо