zoukankan      html  css  js  c++  java
  • 解决ajax 遇到session失效后自动跳转的问题

    在项目中,经常会遇到session失效后,点击任何链接无反应的情况!这样给客户的体验就不是很好,以为是系统出了故障!所以在项目中我们会处理session失效后的跳转问题(一般给用户提示,并跳转后登录页面),代码实现如下所示:

    // 着重处理ajax请求跳转的问题,因为form表单请求可以直接在服务器端完成跳转
    $.ajaxSetup({   contentType:"application/x-www-form-urlencoded;charset=utf-8",   cache:false, global: true, complete: function (XMLHttpRequest, textStatus) { var data = XMLHttpRequest.responseText; if(data.substr(0,15) == "session-invalid") { alert('当前会话已失效,请重新登陆!'); if( window.top != window.self ){ window.top.location = "/index.php?r=site/logout"; // 跳转到登录页面 }else{ window.location = "/index.php?r=site/logout"; } } } });
    // PHP服务端代码处理
    if
    ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest' && !$_SESSION['sUserId']){ //如果是ajax 请求 echo 'session-invalid'; exit; }
  • 相关阅读:
    JavaScript中的__proto__
    移动前端调试页面–weinre
    nodo合并多个mp3文件
    enctype和Content-type有什么关系
    vscode 实用的插件
    前端跨域问题及解决方案
    小小的js
    如何使用eslint
    RN记录
    numpy的索引
  • 原文地址:https://www.cnblogs.com/itsharehome/p/6066649.html
Copyright © 2011-2022 走看看