Java后端判断请求设备

  1. 调用
String ua = request.getHeader("User-Agent");
if (StringUtil.checkAgentIsMobile(ua)) {
	System.out.println("来自移动端访问");
} else {
	System.out.println("来自PC端访问");
}
  1. 工具类
public class StringUtil {
    private final static String[] agent = {"Android", "iPhone", "iPod", "iPad", "Windows Phone", "MQQBrowser"}; //定义移动端请求的所有可能类型

    /**
     * 判断User-Agent 是不是来自于手机
     *
     * @param ua
     * @return
     */
    public static boolean checkAgentIsMobile(String ua) {
        boolean flag = false;
        if (!ua.contains("Windows NT") || (ua.contains("Windows NT") && ua.contains("compatible; MSIE 9.0;"))) {
            // 排除 苹果桌面系统
            if (!ua.contains("Windows NT") && !ua.contains("Macintosh")) {
                for (String item : agent) {
                    if (ua.contains(item)) {
                        flag = true;
                        break;
                    }
                }
            }
        }
        return flag;
    }
}
  1. Java代码

  1. Postman请求测试

原文地址:https://www.cnblogs.com/Twittery/p/15035724.html