区分请求是ajax请求还是普通请求

方法千万种,适合你的最重要。

ajax请求:返回的是json

普通请求:返回的是一个页面

1.导包

            <!-- 引入 Servlet 容器中相关依赖 -->
            <dependency>
                <groupId>javax.servlet</groupId>
                <artifactId>servlet-api</artifactId>
                <version>2.5</version>
                <scope>provided</scope>
            </dependency>

2.从浏览器中查看ajax请求,请求头独有的数据如下:

3.编写一个静态工具类,判断是否是ajax请求 

public class CrowdUtil {
    /**
     * 判断当前请求是否是ajax请求
     * @param request 请求对象
     * @return 返回true:是ajax请求
     */
    public static boolean judgeRequestType(HttpServletRequest request){
        //1.获取请求消息投
        String acceptHeader=request.getHeader("Accept");
        String xRequestedHeader=request.getHeader("X-Requested-With");
        //2.判断,返回true:是ajax请求
        return  ((acceptHeader!=null&&acceptHeader.contains("application/json"))||(xRequestedHeader!=null&&xRequestedHeader.equals("XMLHttpRequest")));

    }
}

4.调用方法

 boolean judgeRequestType = CrowdUtil.judgeRequestType(request);

如下图所示:

猜你喜欢

转载自blog.csdn.net/zaq977684/article/details/121974853