如何判断微信内置浏览器(通过User Agent实现)


Posted in Javascript onSeptember 01, 2014

在进行微信公众账号开发的时候,其中很大一块是微站点的开发,我们需要知道当前的浏览器是微信内置的浏览器,那么如何判断呢?

微信内置浏览器的 User Agent

如何判断微信内置浏览器,首先需要获取微信内置浏览器的User Agent,经过在 iPhone 上微信的浏览器的检测,它的 User Agent 是:

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

所以通过识别 MicroMessenger 这个关键字来确定是否微信内置的浏览器了。

通过 JavaScript 判断

function is_weixin(){
var ua = navigator.userAgent.toLowerCase();
if(ua.match(/MicroMessenger/i)=="micromessenger") {
return true;
} else {
return false;
}
}

通过 PHP 判断

function is_weixin(){ 
if ( strpos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ) {
return true;
} 
return false;
}
Javascript 相关文章推荐
javascript 出生日期和身份证判断大全
Nov 13 Javascript
jQuery在vs2008及js文件中的无智能提示的解决方法
Dec 30 Javascript
js自动下载文件到本地的实现代码
Apr 28 Javascript
href下载文件根据id取url并下载
May 28 Javascript
jQuery动态效果显示人物结构关系图的方法
May 07 Javascript
javascript实现连续赋值
Aug 10 Javascript
详解Backbone.js框架中的模型Model与其集合collection
May 05 Javascript
微信小程序 wx.request(接口调用方式)详解及实例
Nov 23 Javascript
图解javascript作用域链
May 27 Javascript
layui实现左侧菜单点击右侧内容区显示
Jul 26 Javascript
Vue.js数字输入框组件使用方法详解
Oct 19 Javascript
如何使用JavaScript策略模式校验表单
Apr 29 Javascript
使用jquery.validate自定义方法实现"手机号码或者固话至少填写一个"的逻辑验证
Sep 01 #Javascript
上传图片js判断图片尺寸和格式兼容IE
Sep 01 #Javascript
影响jQuery使用的14个方面
Sep 01 #Javascript
自编jQuery插件实现模拟alert和confirm
Sep 01 #Javascript
Jquery实现兼容各大浏览器的Enter回车切换输入焦点的方法
Sep 01 #Javascript
JQuery $.each遍历JavaScript数组对象实例
Sep 01 #Javascript
关闭页面时window.location事件未执行的原因分析及解决方案
Sep 01 #Javascript
You might like
WINDOWS下php5.2.4+mysql6.0+apache2.2.4+ZendOptimizer-3.3.0配置
2008/03/28 PHP
php面向对象全攻略 (六)__set() __get() __isset() __unset()的用法
2009/09/30 PHP
PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
2014/03/17 PHP
仿dedecms下拉分页样式修改的thinkphp分页类实例
2014/10/30 PHP
最新最全PHP生成制作验证码代码详解(推荐)
2016/06/12 PHP
php curl获取到json对象并转成数组array的方法
2018/05/31 PHP
Laravel 解决419错误 -ajax请求错误的问题(CSRF验证)
2019/10/25 PHP
php+js实现的拖动滑块验证码验证表单操作示例【附源码下载】
2020/05/27 PHP
PHP连接MySQL数据库操作代码实例解析
2020/07/11 PHP
JavaScript 设计模式 富有表现力的Javascript(一)
2010/05/26 Javascript
js判断是否为数组的函数: isArray()
2011/10/30 Javascript
不使用XMLHttpRequest实现异步加载 Iframe和script
2012/10/29 Javascript
JS在TextArea光标位置插入文字并实现移动光标到文字末尾
2013/06/21 Javascript
js 获取时间间隔实现代码
2014/05/12 Javascript
jquery实现点击label的同时触发文本框点击事件的方法
2015/06/05 Javascript
js实现点击向下展开的下拉菜单效果代码
2015/09/01 Javascript
jQuery文字横向滚动效果的实现代码
2016/05/31 Javascript
jQuery悬停文字提示框插件jquery.tooltipster.js用法示例【附demo源码下载】
2016/07/19 Javascript
Vue系列:通过vue-router如何传递参数示例
2017/01/16 Javascript
ionic3+Angular4实现接口请求及本地json文件读取示例
2017/10/11 Javascript
jQuery实现的回车触发按钮事件功能示例
2018/03/25 jQuery
解决axios发送post请求返回400状态码的问题
2018/08/11 Javascript
Python中itertools模块用法详解
2014/09/25 Python
Python 读写文件和file对象的方法(推荐)
2016/09/12 Python
python字符串,数值计算
2016/10/05 Python
python 读写文件,按行修改文件的方法
2018/07/12 Python
Django csrf 验证问题的实现
2018/10/09 Python
Django自定义用户表+自定义admin后台中的字段实例
2019/11/18 Python
canvas实现图片镜像翻转的2种方式
2020/07/22 HTML / CSS
Roxy荷兰官方网站:冲浪、滑雪板、服装和配件
2019/10/22 全球购物
测试工程师岗位职责
2013/11/28 职场文书
劳动竞赛活动方案
2014/02/20 职场文书
反腐倡廉警示教育活动总结
2014/05/05 职场文书
小学校园广播稿集锦
2014/10/04 职场文书
行政主管岗位职责
2015/02/03 职场文书
MySQL 十大常用字符串函数详解
2021/06/30 MySQL