判断客户端是PC还是移动端的问题?

1.判断用户是PC端访问还是移动端访问,应该放在服务器来做这个事还是前端来做?
补充:(判断是为了调用移动端界面还是PC端界面来进行适配)

阅读 5.6k
评论
    6 个回答

    前端js判断就行

    isPC () { //是否为PC端
        var userAgentInfo = navigator.userAgent;
        var Agents = ["Android", "iPhone",
                    "SymbianOS", "Windows Phone",
                    "iPad", "iPod"];
        var flag = true;
        for (var v = 0; v < Agents.length; v++) {
            if (userAgentInfo.indexOf(Agents[v]) > 0) {
                flag = false;
                break;
            }
        }
        return flag;
    }

      一般前端js判断就行,navigator.userAgent进行处理

        • 2.1k

        if (/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) {

            //移动端

        }else{

            //PC

        }

          • 7.1k

          目前通用的做法是通过UA判断,这个在客户端和服务端都可以做。当然不准,UA存在被伪造的可能性,但被伪造的UA只是少数,所以大致的趋势还是准的。

            web的话,前端可以通过浏览器获取userAgent,一般的浏览器都是在userAgent区分了PC和移动设备。如果想通过后端得到,没有前端请求提供,是没法知道的吧?

              if (/(iPhone|iPad|iPod|iOS|Android)/i.test(navigator.userAgent)) { //移动端
                   //TODO
              }
                撰写回答

                登录后参与交流、获取后续更新提醒