1. 程式人生 > >ajax 請求前後處理

ajax 請求前後處理

1. 介紹

通過 jQuery 提供的 ajaxSetup 方法,我們可以攔截頁面上所有的 Ajax 請求響應(包括 $.ajax、$.post、$.get)。這樣我們可以對這些 Ajax 請求響應做統一的處理。

2. 例項

在每個需要攔截的頁面中新增 或者 在頁面引入的js檔案中新增


    //全域性的ajax訪問,處理ajax清求時session超時
      $.ajaxSetup({
         contentType:"application/x-www-form-urlencoded;charset=utf-8",

          //請求傳送之前
         beforeSend:function(xhr) {
             xhr.setRequestHeader('Authorization','Token 123')
        },

        //請求完成之後
         complete:function(XMLHttpRequest,textStatus){
           //通過XMLHttpRequest取得響應頭,sessionstatus,
             var sessionstatus=XMLHttpRequest.getResponseHeader("sessionstatus");
             if(sessionstatus=="timeout"){
                 //如果超時就處理 ,指定要跳轉的頁面(比如登陸頁)
                 window.location.replace("/login/index.php");
             }
          }
       });