解决拦截器对ajax请求的的拦截

拦截器配置:
public boolean preHandle(HttpServletRequest request, HttpServletResponse response,Object obj) throws Exception {
//获取判定登陆的session是否存在
String token = (String) request.getSession().getAttribute("token");
String postId = (String) request.getSession().getAttribute("postId");
if(token == null || token == ""){
String XRequested =request.getHeader("X-Requested-With");
if("XMLHttpRequest".equals(XRequested)){
response.getWriter().write("IsAjax");
}else{
response.sendRedirect("/m-web/user/toLogin");
}
return false;
}
if(postId == null || postId == ""){
String XRequested =request.getHeader("X-Requested-With");
if("XMLHttpRequest".equals(XRequested)){
response.getWriter().write("IsAjax");
}else{
response.sendRedirect("/m-web/user/toLogin");
}
return false;
}
return true;
}
1、判断 String XRequested =request.getHeader("X-Requested-With") 的值,目的是判断是否是ajax请求。
2、response.getWriter().write("IsAjax");写出一个响应的数据给ajax,这样就可以在ajax里面做判断
判断的方式存在两种方式:
1)直接在ajax里面做判断(不建议)
success:function(data){
if(data == "IsAjax"){
window.location.href="m-web/user/toLogin"
return;
}
}
2)改ajax源码然后在做压缩,是针对全局的方式来修改的(建议)
if ( isSuccess ) {// if no content
if ( status === 204 || s.type === "HEAD" ) {
statusText = "nocontent";
// if not modified
} else if ( status === 304 ) {
statusText = "notmodified";
// If we have data, let's convert it
} else {
statusText = response.state;
success = response.data;
error = response.error;
isSuccess = !error;
//解决ajax拦截问题
var result = responses.text;
if(result.indexOf("IsAjax")>=0){
window.location.href="m-web/user/toLogin";
return;
}
}
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
# 拦截器
# ajax请求拦截
# ajax请求拦截详解
# 解决拦截器
# ajax请求拦截实例
# 用jQuery.ajaxSetup实现对请求和响应数据的过滤
# jquery的ajax如何使用ajaxSetup做全局请求拦截
# 两种
# 希望能
# 谢谢大家
# 是否存在
# 就可以
# 判断是否
# 目的是
# getAttribute
# postId
# String
# write
# getSession
# token
# null
# getHeader
# Requested
# XMLHttpRequest
# equals
# getWriter
相关文章:
微信h5制作网站有哪些,免费微信H5页面制作工具?
阿里云网站制作公司,阿里云快速搭建网站好用吗?
如何快速上传建站程序避免常见错误?
如何快速生成专业多端适配建站电话?
实例解析angularjs的filter过滤器
青浦网站制作公司有哪些,苹果官网发货地是哪里?
如何彻底卸载建站之星软件?
Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递
沈阳制作网站公司排名,沈阳装饰协会官方网站?
如何用wdcp快速搭建高效网站?
非常酷的网站设计制作软件,酷培ai教育官方网站?
如何通过.red域名打造高辨识度品牌网站?
如何在阿里云域名上完成建站全流程?
济南网站制作的价格,历城一职专官方网站?
Python如何创建带属性的XML节点
香港服务器网站生成指南:免费资源整合与高速稳定配置方案
中山网站制作网页,中山新生登记系统登记流程?
香港服务器如何优化才能显著提升网站加载速度?
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
香港服务器选型指南:免备案配置与高效建站方案解析
建站主机空间推荐 高性价比配置与快速部署方案解析
如何通过IIS搭建网站并配置访问权限?
制作网站的网址是什么,请问后缀为.com和.com.cn还有.cn的这三种网站是分别是什么类型的网站?
微信小程序 五星评分(包括半颗星评分)实例代码
jQuery 常见小例汇总
如何在云主机上快速搭建网站?
如何在Windows环境下新建FTP站点并设置权限?
已有域名和空间,如何快速搭建网站?
网站制作需要会哪些技术,建立一个网站要花费多少?
Android自定义listview布局实现上拉加载下拉刷新功能
PHP 500报错的快速解决方法
香港服务器租用每月最低只需15元?
建站之星如何取消后台验证码生成?
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
制作销售网站教学视频,销售网站有哪些?
免费公司网站制作软件,如何申请免费主页空间做自己的网站?
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
湖北网站制作公司有哪些,湖北清能集团官网?
如何快速搭建支持数据库操作的智能建站平台?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?
建站之星下载版如何获取与安装?
c++ stringstream用法详解_c++字符串与数字转换利器
如何快速使用云服务器搭建个人网站?
如何选择最佳自助建站系统?快速指南解析优劣
建站之星伪静态规则如何正确配置?
如何挑选高效建站主机与优质域名?
免费ppt制作网站,有没有值得推荐的免费PPT网站?
济南网站建设制作公司,室内设计网站一般都有哪些功能?
如何获取免费开源的自助建站系统源码?
*请认真填写需求信息,我们会在24小时内与您取得联系。