4 回答
TA贡献1853条经验 获得超9个赞
1 2 3 4 5 | String requestType = request.getHeader("X-Requested-With");if("XMLHttpRequest".equals(requestType)){ System.out.println("AJAX请求..");}else{ System.out.println("非AJAX请求.."); //此时requestType为null } |
TA贡献1770条经验 获得超3个赞
PHP 全局变量 - 超全局变量 - 【$_SERVER】
判断请求是GET:
1 | $_SERVER [ 'REQUEST_METHOD' ] == 'GET' ? true : false |
判断请求是POST:
1 | $_SERVER [ 'REQUEST_METHOD' ] == 'POST' ? true : false |
另外判断请求是AJAX:
1 | ((isset( $_SERVER [ 'HTTP_X_REQUESTED_WITH' ]) && strtolower ( $_SERVER [ 'HTTP_X_REQUESTED_WITH' ]) == 'xmlhttprequest' ) || ! empty ( $_POST [C( 'VAR_AJAX_SUBMIT' )]) || ! empty ( $_GET [C( 'VAR_AJAX_SUBMIT' )])) ? true : false |
TA贡献2012条经验 获得超12个赞
能否在java端,如拦截器里判断客户的的请求是否是ajax请求呢 我之前的处理是在前台里弄的,判断返回的是登陆页面就让他整个跳到登陆页面去 你这样的话,项目中所有的ajax请求所在的页面,都要去单独判断单独处理,并且如果新加了ajax请求模块,你又要去格外处理,如果项目中的ajax请求多了,开发和维护就麻烦了, 所以如果能在拦截器中一次性处理那就更好,目前我就是在拦截器中返回一个逻辑视图,然后在全局配置中,通过这个逻辑视图去指向一个页面。然后你可以在这个页面上任意发挥了,你可以将这个页面做成div弹框,你也可以直接简单写几个字,直接提醒用户去重新登陆,但是,在这里不能写js,因为异步响应返回的js,是不会被识别的 如果要象我说的那样弄的话,可以把你的ajax封装成一个方法,以为每次调用的时候只需要传下相应的参数就行了,不知道可以否,另:像jquery这类的js框架不太熟,不知道它们的封装的ajax有没有可以借鉴的
添加回答
举报