我做到了我自己,这是js代码为它“gracefulSession.js”并调用这个JavaScript在页面你要去哪里嵌入HTML代码..

function checkSessionStatus() {

var lStorage = getLocalStorage();

if (lStorage) {

//lStorage.setItem('poleTime',new Date());

var poleTime = lStorage.getItem("poleTime");

var parsedTime;

try {

parsedTime = new Date(poleTime);

} catch (e) {}

//alert(new Date()-parsedTime)

//alert(new Date())

//alert(parsedTime)

//3900000 = 1H5M

if (parsedTime && (new Date() - parsedTime) < 3900000) {

//alert('NCATCH'+parsedTime);

} else {

//alert('POINT');

poleSessionStatus();

}

}

}

function setlatestPoleTIme() {

//alert("SETTING POLE TIME");

var lStorage = getLocalStorage();

if (lStorage) {

lStorage.setItem('poleTime', new Date());

}

}

function setCheckSessionTimer() {

var lStorage = getLocalStorage();

var isLoggedOut = false;

if (lStorage) {

if (lStorage.getItem('isLoggedOut') == 'true') {

isLoggedOut = true;

}

}

//console.log('checkingIfLoggedOut');

if (!isLoggedOut) {

setTimeout("setCheckSessionTimer();", 5000);

//console.log("NOPT LO");

$('#LoggedoutMessage').hide();

checkSessionStatus();

} else {

setTimeout("setCheckSessionTimer();", 5000);

//console.log("KO");

//alert("You're Logged Out from other tab");

$('#LoggedoutMessage').show();

}

}

function logout() {

//alert("LOGGIN OUT")

var lStorage = getLocalStorage();

if (lStorage) {

lStorage.setItem('isLoggedOut', 'true');

}

}

function resetLoggedOutFLag() {

var lStorage = getLocalStorage();

if (lStorage) {

lStorage.removeItem('isLoggedOut');

}

}

function getLocalStorage() {

var storage, fail, uid;

try {

uid = new Date;

(storage = window.localStorage).setItem(uid, uid);

fail = storage.getItem(uid) != uid;

storage.removeItem(uid);

fail && (storage = false);

} catch (e) {}

return storage

}

现在,HTML代码嵌入,

You have been logged out.

Please login to continue.

最后,你保持你的HTML,保持这段JavaScript代码在它的上面嵌入脚本标签:

function poleSessionStatus() {

jQuery.ajax({

type: 'POST',

data: '',

url: '',

success: function (data, textStatus) {

//setTimeout ("checkSession();", 5000);

},

error: function (XMLHttpRequest, textStatus, errorThrown) {

$('#LoggedoutMessage').show();

},

complete: function (XMLHttpRequest, textStatus) {

$.unblockUI();

}

});

}

ajax如何知道超时请求,如何发送ajax请求来检查会话超时并在grails中呈现relogin消息?...相关推荐

  1. jquery queue ajax,如何通过jQuery和Queue发送ajax请求?

    嗯,我有一个"ID"列表,我需要为每个"ID"发送一个Ajax请求. IDE是当请求完成时,运行以下Ajax请求. 所有这些与异步请求,因为否则,浏览器字面上& ...

  2. java和ajax超时_java – 如何在不重置tomcat的会话超时的情况下执行经过身份验证的AJAX请求?...

    我会使用Grails过滤器,它会执行类似于The-MeLLeR提议的内容,而不会在所有会话中进行不必要的循环: class AjaxTimeoutFilters { int sessionTimeou ...

  3. ajax返回的图片数据格式,jquery发送ajax请求返回数据格式

    jquery向服务器发送一个ajax请求后,可以返回多种类型的数据格式,包括:html,xml,json,text等. 1.html格式的数据 " "+username+" ...

  4. ajax数据传送中文乱码,springmvc 发送ajax出现中文乱码的解决方法汇总

    使用spingmvc,在JS里面通过ajax发送请求,并返回json格式的数据,从数据库拿出来是正确的中文格式,展示在页面上就是错误的??,研究了一下,有几种解决办法. 我使用的是sping-web- ...

  5. 如何发起一个HTTP请求,发送HTTP请求的几种方式

    目录 概述 如何发起一个HTTP请求 模拟浏览器发送HTTP请求方式 概述 如何发起一个HTTP请求?这个问题似乎既简单又复杂,简单是指当你在浏览器里输入一个URL时,按回车键后这个HTTP请求就发起 ...

  6. 发送请求_发送soap请求调用wsdl服务

    需求:在客户端发起流程后,向另一个OA系统中发送一条代办服务的通知 Web系统提供了wsdl 1,获取对方web服务的地址: 处理方式,获取我方系统的服务器路径,然后在路径下添加文件配置对方web系统 ...

  7. python token发送请求_python发送requests请求时,使用登录的token值,作为下一个接口的请求头信息...

    python发送requests请求时,使用登录的token值,作为下一个接口的请求头信息 登录接口代码: 在这里插入图片描述 登陆后返回的结果是: 在这里插入图片描述 新增渠道接口: 新增渠道接口需 ...

  8. Winform窗体中发送HTTP请求 手工发送HTTP请求主要是调用 System.Net的HttpWebResponse方法

    手工发送HTTP请求主要是调用 System.Net的HttpWebResponse方法 手工发送HTTP的GET请 求: C# code / 向服务器发出申请 string strURL = &qu ...

  9. Postman + Pre-resuestScript:预请求脚本发送POST请求

    使用postman调试业务接口,往往都需要使用 Token Token往往会过期,这时候就需要手动调用登录接口获取最新的Token postman的预请求脚本(Pre-resuestScript)就可 ...

最新文章

  1. JavaScript如何诞生
  2. 使用敏捷回顾实施组织变革
  3. UOJ#370. 【UR #17】滑稽树上滑稽果 动态规划
  4. 天转凉了,注意保暖,好吗(需求规格说明书放在github了)
  5. RecSys 2017总结
  6. 发布订阅之topics
  7. SpringCloud(一)系统架构演进
  8. 蚂蚁集团2021反诈骗治理报告:“注销校园贷”类诈骗资损降85%
  9. 功放(耳机/音箱)声压级计算(五)
  10. 使用Octave绘制正玄余玄函数
  11. app做好后如何上线_自己做的app从做好到上架需要什么手续或过程?
  12. 详解AD(Altium Designer)中的机械层 - 2
  13. 强制关闭无法关闭的进程的方法
  14. 微信小程序商城优势在什么地方
  15. 全息干涉图补零尺寸与三种重构方法重建像间的关系研究
  16. android preference 启动activity,Android PreferenceActivity 学习笔记
  17. 【资料分享】Verilog编程艺术.pdf
  18. php 清除缓存代码
  19. CVAE (条件 变分 自动编码器)
  20. 【DevOps】什么是混沌工程?

热门文章

  1. TP5_模型初始化_踩坑记录
  2. Jquery 添听checkbox 是否选中
  3. 借助 Evolution Linux 的帮助来轻松安装 Arch Linux
  4. 返回空的List集合
  5. 03-SpringMVC-获得用户请求数据
  6. 答“我们的团队项目是否有大泥球?”
  7. 不管工作压力太大了,还是工作压力太小了;都容易引起开发人员的辞职风波...
  8. 数据库的设计(一些观点) _转
  9. Redis Zrevrangebyscore 命令
  10. 服务器架构有哪些方式?—Vecloud微云