最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Web 開發(fā)中Ajax的Session 超時(shí)處理方法

 更新時(shí)間:2017年01月19日 10:12:52   投稿:jingxian  
下面小編就為大家?guī)硪黄猈eb 開發(fā)中Ajax的Session 超時(shí)處理方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

在 Java Web 開發(fā)中,當(dāng)session超時(shí)的情況下,普通頁面的跳轉(zhuǎn)好處理。關(guān)于Ajax的請(qǐng)求超時(shí)處理,就需要特殊處理下了。

先寫一個(gè)統(tǒng)一的過濾器,或者攔截器,針對(duì)Ajax請(qǐng)求進(jìn)行過濾處理,下面示例以Filter為例:

  public void doFilter(ServletRequest request, ServletResponse response,
      FilterChain chain) throws IOException, ServletException {
    HttpServletRequest servletRequest=(HttpServletRequest)request;
    HttpServletResponse servletResponse=(HttpServletResponse)response;
    // 判斷是否是 Ajax 請(qǐng)求,因?yàn)?Ajax 請(qǐng)求會(huì)追加 x-requested-with=XMLHttpRequest
    if("XMLHttpRequest".equalsIgnoreCase(servletRequest.getHeader("x-requested-with"))){
      servletResponse.addHeader("sessionstatus", "timeout");
    }    
    // 后續(xù)代碼省略......
  }

然后在頁面上調(diào)用使用Ajax的時(shí)候,捕獲結(jié)果進(jìn)行超時(shí)處理,如下:

// 全局的ajax訪問,處理ajax清求時(shí)sesion超時(shí)
$.ajaxSetup({
  type: POST,
  contentType:"application/json;charset=utf-8",
  // 使用 complete 捕獲結(jié)果,做超時(shí)處理
  complete: function (XMLHttpRequest, textStatus) {
    var data = XMLHttpRequest.responseText;
    if (data == "timeout") {
      if( window.top != window.self ){
        window.top.location = "${pageContext.request.contextPath}";
      }
    }
  }
});

根據(jù) Header 判斷是否是 Ajax 請(qǐng)求,如果是 Ajax 就丟出一個(gè)狀態(tài)碼。

這段處理的 js 代碼,可以提取為一個(gè)方法,這樣方便在其他地方直接使用。

以上這篇Web 開發(fā)中Ajax的Session 超時(shí)處理方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • js檢測(cè)判斷日期大于多少天的方法

    js檢測(cè)判斷日期大于多少天的方法

    這篇文章主要介紹了js檢測(cè)判斷日期大于多少天的方法,涉及javascript操作日期的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-05-05
  • JS面試必備之手寫call/apply/bind/new

    JS面試必備之手寫call/apply/bind/new

    在JavaScript中,call、apply、bind、new是Function對(duì)象自帶的三個(gè)方法,也是面試時(shí)常考的知識(shí)點(diǎn),所以本文就來和大家講講如何手寫實(shí)現(xiàn)這四個(gè)方法吧
    2023-05-05
  • js中匿名函數(shù)的創(chuàng)建與調(diào)用方法分析

    js中匿名函數(shù)的創(chuàng)建與調(diào)用方法分析

    這篇文章主要介紹了js中匿名函數(shù)的創(chuàng)建與調(diào)用方法,詳細(xì)分析了匿名函數(shù)的原理與用法,以及閉包的原理分析,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2014-12-12
  • JavaScript AOP編程實(shí)例

    JavaScript AOP編程實(shí)例

    這篇文章主要介紹了JavaScript AOP編程,實(shí)例分析了javascript實(shí)現(xiàn)AOP編程的基本技巧,需要的朋友可以參考下
    2015-06-06
  • js實(shí)現(xiàn)div層緩慢收縮與展開的方法

    js實(shí)現(xiàn)div層緩慢收縮與展開的方法

    這篇文章主要介紹了js實(shí)現(xiàn)div層緩慢收縮與展開的方法,通過javascript自定義函數(shù)實(shí)現(xiàn)div層的收縮與展開效果,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-05-05
  • js二維碼生成插件jquery.qrcode.js如何自定義LOGO

    js二維碼生成插件jquery.qrcode.js如何自定義LOGO

    介紹如何將jquery.qrcode.min.js與jquery集成到網(wǎng)頁中,生成帶LOGO的二維碼,提供了修改代碼以支持LOGO上傳的步驟,并給出注意事項(xiàng)以確保二維碼的識(shí)別效果
    2024-11-11
  • JavaScript中播放音頻文件的幾種常用方法

    JavaScript中播放音頻文件的幾種常用方法

    JS可以用來播放多種聲音文件,包括常見的mp3、wav等格式,這篇文章主要給大家介紹了關(guān)于JavaScript中播放音頻文件的幾種常用方法,需要的朋友可以參考下
    2023-10-10
  • js 取消頁面可以選中文字的功能方法

    js 取消頁面可以選中文字的功能方法

    下面小編就為大家分享一篇js 取消頁面可以選中文字的功能方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • llqrcode js識(shí)別二維碼解析二維碼信息實(shí)例

    llqrcode js識(shí)別二維碼解析二維碼信息實(shí)例

    這篇文章主要為大家介紹了llqrcode js識(shí)別二維碼解析二維碼信息實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • 微信公眾號(hào)獲取用戶地理位置并列出附近的門店的示例代碼

    微信公眾號(hào)獲取用戶地理位置并列出附近的門店的示例代碼

    這篇文章主要介紹了微信公眾號(hào)獲取用戶地理位置并列出附近的門店的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07

最新評(píng)論

沂水县| 中江县| 罗平县| 华阴市| 永年县| 永春县| 青龙| 光泽县| 威远县| 资讯 | 伊吾县| 溧水县| 乐陵市| 安仁县| 革吉县| 新河县| 宝应县| 通山县| 虹口区| 高尔夫| 子洲县| 长白| 琼结县| 合阳县| 云浮市| 图们市| 奉化市| 敦煌市| 华容县| 山东| 大方县| 芦溪县| 察哈| 凤凰县| 鹿泉市| 荆门市| 鸡泽县| 蒙城县| 台江县| 武鸣县| 遵义市|