如何判断微信内置浏览器(通过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 相关文章推荐
jquery 新手学习常见问题解决方法
Apr 18 Javascript
JavaScript定义类或函数的几种方式小结
Jan 09 Javascript
json2.js的初步学习与了解
Oct 06 Javascript
jQuery代码优化之基本事件
Nov 01 Javascript
理解javascript函数式编程中的闭包(closure)
Mar 08 Javascript
JS之获取样式的简单实现方法(推荐)
Sep 13 Javascript
Bootstrap面板使用方法
Jan 16 Javascript
Spring Boot+AngularJS+BootStrap实现进度条示例代码
Mar 02 Javascript
javascript 取小数点后几位几种方法总结
Aug 02 Javascript
ActiveX控件的使用-js实现打印超市小票功能代码详解
Nov 22 Javascript
js数据类型转换与流程控制操作实例分析
Dec 18 Javascript
vue项目实现图片上传功能
Dec 23 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
怎样在php中使用PDF文档功能
2006/10/09 PHP
mysql 全文搜索 技巧
2007/04/27 PHP
PHP 事件机制(2)
2011/03/23 PHP
php添加文章时生成静态HTML文章的实现代码
2013/02/17 PHP
php 三大特点:封装,继承,多态
2017/02/19 PHP
thinkPHP5.0框架命名空间详解
2017/03/18 PHP
thinkPHP5框架auth权限控制类与用法示例
2018/06/12 PHP
JS模拟并美化的表单控件完整实例
2015/08/19 Javascript
Vue中父组件向子组件通信的方法
2017/07/11 Javascript
jQuery+vue.js实现的九宫格拼图游戏完整实例【附源码下载】
2017/09/12 jQuery
解决vuex数据异步造成初始化的时候没值报错问题
2019/11/13 Javascript
浅谈Vue.js之初始化el以及数据的绑定说明
2019/11/14 Javascript
python模拟enum枚举类型的方法小结
2015/04/30 Python
Python迭代器定义与简单用法分析
2018/04/30 Python
利用python画出折线图
2018/07/26 Python
解决pandas.DataFrame.fillna 填充Nan失败的问题
2018/11/06 Python
python3实现网络爬虫之BeautifulSoup使用详解
2018/12/19 Python
如何在Django中设置定时任务的方法示例
2019/01/18 Python
自学python的建议和周期预算
2019/01/30 Python
python3利用Socket实现通信的方法示例
2019/05/06 Python
Django如何开发简单的查询接口详解
2019/05/17 Python
在Python中合并字典模块ChainMap的隐藏坑【推荐】
2019/06/27 Python
python 缺失值处理的方法(Imputation)
2019/07/02 Python
django 捕获异常和日志系统过程详解
2019/07/18 Python
使用OpenCV去除面积较小的连通域
2020/07/05 Python
荷兰鞋子在线:Nelson Schoenen
2017/12/25 全球购物
捷克原创男装和女装购物网站:Bolf.cz
2018/04/28 全球购物
触摸春天教学反思
2014/02/03 职场文书
社区安全检查制度
2014/02/03 职场文书
团日活动总结
2014/04/28 职场文书
银行先进个人事迹材料
2014/05/11 职场文书
2014年效能监察工作总结
2014/11/21 职场文书
大学生个人年度总结范文
2015/02/15 职场文书
和谐拯救危机观后感
2015/06/15 职场文书
辞职离别感言
2015/08/04 职场文书
入伍志愿书怎么写?
2019/07/19 职场文书