• 如何判断微信内置浏览器 MicroMessenger


    备注:基于网络上内容所有修改

    在进行微信公众账号开发的时候,其中很大一块是微站点的开发,有时候我们需要知道当前的浏览器是微信内置的浏览器,从而做一些事情。

    1、例如微信内置浏览器不显示底部导航,其他浏览器显示底部导航

    2、例如表单是否从微信内置浏览器提交

    3、等等

    那么如何判断呢?

    一、微信内置浏览器的 User Agent
    如何判断微信内置浏览器,首先需要获取微信内置浏览器的User Agent。

    首先我们通过php内置的 $_SERVER["HTTP_USER_AGENT"] server数组来获取User Agent。

    iPhone 通过微信内置浏览器访问网页时得到 User Agent 是:

    1
    Mozilla/5.0 (iPhone; CPU iPhone OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Mobile/10B329 MicroMessenger/5.0.1

    Android 通过微信内置浏览器访问网页时得到 User Agent 是:

    1
    Mozilla/5.0 (Linux; U; Android 2.3.6; zh-cn; GT-S5660 Build/GINGERBREAD) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1 MicroMessenger/4.5.255

    从以上两种手机设置中可以发现,通过识别 MicroMessenger 这个关键字来确定是否微信内置的浏览器了。
    通过 JavaScript 判断

    1
    2
    3
    4
    5
    6
    7
    8
    function is_weixin(){
        var ua = navigator.userAgent.toLowerCase();
        if(ua.match(/MicroMessenger/i)=="micromessenger") {
            return true;
         else {
            return false;
        }
    }

    通过 PHP 判断

    1
    2
    3
    4
    5
    6
    function is_weixin(){ 
        if strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ) {
                return true;
        }    
        return false;
    }
  • 相关阅读:
    如何实现parseFloat保留小数点后2位
    C#正则表达式整理备忘
    HRESULT:0x80070057 (E_INVALIDARG)的异常的解决方案
    c# using的几种用法
    QQ截图 有快捷键的,如Shift+S
    史上最深刻的黄段子
    文本框回车自动提交
    C#与ASP.NET中DateTime.Now函数详解
    ASP.NET页面生命周期
    .NET中HttpWebRequest详解
  • 原文地址:https://www.cnblogs.com/2019gdiceboy/p/11004982.html
Copyright © 2020-2023  润新知