关于 x-requested-with 请求头 区分ajax请求还是普通请求
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于 x-requested-with 请求头 区分ajax请求还是普通请求相关的知识,希望对你有一定的参考价值。
今天做Spring MVC异常统一处理这块,在处理的时候需要区分发送过来的请求是传统请求还是ajax请求,网上有现成的代码,我是参考http://www.2cto.com/kf/201412/364393.html 里面的做法。其中的
if
(!( request.getHeader(
"accept"
).indexOf(
"application/json"
) > -
1
|| ( request
.getHeader(
"X-Requested-With"
) !=
null
&& request
.getHeader(
"X-Requested-With"
).indexOf(
"XMLHttpRequest"
) > -
1
) ))
段代码是判断请求类型的代码,但是经过反复的测试发现(用goole 、火狐、360浏览器测试)现在的浏览器传统的请求也会发送 X-Requested-With 请求头,所以以上代码判断结果不能真正区分传统请求还是ajax请求。至于如何区分由于本人的能力有限还没想出来(上网查了一下,基本上都是通过以上方法区分的)
以上是关于关于 x-requested-with 请求头 区分ajax请求还是普通请求的主要内容,如果未能解决你的问题,请参考以下文章
PHP配置请求头允许跨域拦截OPTIONS请求接收POST请求参数