Выполнение фрагмента кода при каждом запросе ajax - PullRequest
0 голосов
/ 07 мая 2018

Я работаю над проектом ASP.net форм. При каждом ajax-запросе мне нужно выполнить фрагмент кода (в этом случае сбросить истечение сеанса). Каков наилучший способ добиться этого?

Ответы [ 3 ]

0 голосов
/ 07 мая 2018

Существует целый ряд глобальных событий AJAX, которые происходят в течение жизненного цикла запроса AJAX: перед отправкой запрос является одним из них. Вы можете использовать это, чтобы установить обработчик, который запускается каждый раз, когда на вашей странице выполняется ЛЮБОЙ вызов AJAX.

Это может помочь Жизненный цикл ASP.NET Ajax

0 голосов
/ 07 мая 2018

Вы можете использовать перехватчик ajax,

$.ajaxSetup({
beforeSend: function (xhr) {
    /// call your method here
}});
0 голосов
/ 07 мая 2018
  1. Создайте оболочку поверх ajax-запроса, который вы будете вызывать из кода пользователя
  2. Предполагается, что вы используете что-то вроде jQuery ajax, который возвращает Promise, связывает вашу _always_run_this_function_ с обработчиком успеха, а затем возвращается.

Поскольку в обещании может быть любое количество обработчиков, 1) ваша общая функция и 2) пользовательская функция будет выполняться последовательно.

   function AjaxWrapper(webMethodName, parameterListInJsonFormat) {  
       var promise = $.ajax({  
          url: "Service.svc/" + webMethodName,  
           contentType: "application/json; charset=utf-8",  
          type: "POST",  
           input: parameterListInJsonFormat  
         });  
         promise.done(_always_run_this_function_);
         return promise;
    }

Детали: https://www.codeproject.com/Articles/636701/jQuery-Promise-An-introduction-to-AJAX-with-multic

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...