java后台如何判断是移动端还是pc端的访问请求

Posted 坠落凡尘的魔鬼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java后台如何判断是移动端还是pc端的访问请求相关的知识,希望对你有一定的参考价值。

                                                   java后台如何判断是移动端还是pc端的访问请求

主要是根据  HttpServletRequest request  中的请求头所带的参数 user-agent来获取:

String userAgent = request.getHeader("user-agent");

if (userAgent.indexOf("android") != -1) {
    // 安卓

  String defaultFailureUrl = "/login_moblie.jsp";
     System.out.println("Android访问!!!" + "没有登录,返回的页面===" +defaultFailureUrl);
         ......
} else if (userAgent.indexOf("iPhone") != -1 || userAgent.indexOf("iPad") != -1) {
    // 苹果

      String defaultFailureUrl = "/login_moblie.jsp";
     System.out.println("iPhone/iPad访问!!!"+ "没有登录,返回的页面==="+ defaultFailureUrl);

   ......
    
} else {   // 电脑
        String defaultFailureUrl = "/login.jsp";
       System.out.println("电脑访问!!!"+ "没有登录,返回的页面===" + defaultFailureUrl);

     ......//逻辑处理
}

 

对判断后添加自己的逻辑处理。

下面是不同的访问打印的结果:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/57.0.2987.110 Safari/537.36
电脑访问!!!没有登录,返回的页面===/login.jsp

//安卓端
Mozilla/5.0 (Linux; Android 6.0; MZ-M5 Note Build/MRA58K) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/45.0.2454.94 Mobile Safari/537.36
  Android访问!!!没有登录,返回的页面===/login_moblie.jsp

//苹果端
Mozilla/5.0 (iPhone; CPU iPhone OS 7_1_1 like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko) Version/7.0 Mobile/11D201 Safari/9537.53
  iPhone/iPad访问!!!没有登录,返回的页面===s/login_moblie.jsp

//安卓
Mozilla/5.0 (Linux; Android 6.0; DIG-AL00 Build/HUAWEIDIG-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.49 Mobile MQQBrowser/6.2 TBS/043305 Safari/537.36 MicroMessenger/6.5.10.1080 NetType/WIFI Language/zh_CN
  Android访问!!!没有登录,返回的页面===/login_moblie.jsp




 






















以上是关于java后台如何判断是移动端还是pc端的访问请求的主要内容,如果未能解决你的问题,请参考以下文章

vue 项目判断是PC端还是移动端

js如何判断用户是在pc端和还是移动端访问

php 中判断请求来自 移动手机端,还是来自电脑 PC 端:

VUE 判断电脑还是手机设备 pc端自适应 移动端rem布局

简单的利用JS来判断页面是在手机端还是在PC端打开的方法

前后端如何互联?---websocket