request.getHeader 二

发布时间 2023-09-05 10:20:45作者: 每月工资一万八
判断请求是否来自电脑端
    /**
     * 判断请求是否来自电脑端
     */
    public static boolean isDesktop(HttpServletRequest request) {
        return !isMobile(request);
    }

    public static boolean isMobile(HttpServletRequest request) {
        String ua = request.getHeader("User-Agent").toLowerCase();
        String type = "(phone|pad|pod|iphone|ipod|ios|ipad|android|mobile|blackberry|iemobile|mqqbrowser|juc|fennec|wosbrowser|browserng|webos|symbian|windows phone)";
        Pattern pattern = Pattern.compile(type);
        return pattern.matcher(ua).find();
    }

 

判断设备类型
    /**
     * 判断设备类型
     * @param request
     * @return
     */
    public static String getDeviceType(HttpServletRequest request) {
        String ua = request.getHeader("User-Agent");

        if (ua.contains("Windows")) {
            return DeviceTypeEnum.WINDOWS.getType();
        } else if (ua.contains("Linux")) {
            return DeviceTypeEnum.LINUX.getType();
        } else if (ua.contains("Mac OS")) {
            return DeviceTypeEnum.MAC.getType();
        } else if (ua.contains("Android")) {
            return DeviceTypeEnum.ANDROID.getType();
        } else if (ua.contains("iOS")) {
            return DeviceTypeEnum.IOS.getType();
        }
        return "";
    }