如何判断微信内置浏览器(通过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 相关文章推荐
WEB 浏览器兼容 推荐收藏
May 14 Javascript
在JS数组特定索引处指定位置插入元素
Jul 27 Javascript
DOM节点深度克隆函数cloneNode()用法实例
Jan 12 Javascript
html的DOM中document对象images集合用法实例
Jan 21 Javascript
详解JavaScript基于面向对象之继承实例
Dec 16 Javascript
javascript html实现网页版日历代码
Mar 08 Javascript
在DWR中实现直接获取一个JAVA类的返回值的两种方法
Dec 25 Javascript
javascript中replace使用方法总结
Mar 01 Javascript
ES6中Proxy与Reflect实现重载(overload)的方法
Mar 30 Javascript
Vue.set()动态的新增与修改数据,触发视图更新的方法
Sep 15 Javascript
微信小程序发送短信验证码完整实例
Jan 07 Javascript
微信小程序用户登录和登录态维护的实现
Dec 10 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中for循环语句的几种变型
2006/11/26 PHP
PHP 数组排序方法总结 推荐收藏
2010/06/30 PHP
用js实现的抽象CSS圆角效果!!
2007/05/03 Javascript
2007/12/23更新创意无限,简单实用(javascript log)
2007/12/24 Javascript
JavaScript.The.Good.Parts阅读笔记(一)假值与===运算符
2010/11/16 Javascript
select多选 multiple的使用示例
2014/06/16 Javascript
node.js中的fs.readFile方法使用说明
2014/12/15 Javascript
javascript 数组操作详解
2015/01/29 Javascript
jQuery实现的鼠标滑过弹出放大图片特效
2016/01/08 Javascript
jQuery模仿单选按钮选中效果
2016/06/24 Javascript
解析NodeJs的调试方法
2016/12/11 NodeJs
js实现颜色阶梯渐变效果(Gradient算法)
2017/03/21 Javascript
JavaScript中各数制转换全面总结
2017/08/21 Javascript
Vue 使用中的小技巧
2018/04/26 Javascript
对layer弹出框中icon数字参数的说明介绍
2019/09/04 Javascript
vue源码中的检测方法的实现
2019/09/26 Javascript
vue 解决文本框被键盘遮住的问题
2019/11/06 Javascript
[02:41]2015国际邀请赛中国区预选赛观战指南
2015/05/20 DOTA
[07:37]DOTA2-DPC中国联赛2月2日Recap集锦
2021/03/11 DOTA
Python实现队列的方法
2015/05/26 Python
深入理解Python中字典的键的使用
2015/08/19 Python
基于python中pygame模块的Linux下安装过程(详解)
2017/11/09 Python
Python实现通过继承覆盖方法示例
2018/07/02 Python
利用Python如何批量修改数据库执行Sql文件
2018/07/29 Python
在PyCharm导航区中打开多个Project的关闭方法
2019/01/17 Python
selenium+python环境配置教程详解
2019/05/28 Python
Python图像处理PIL各模块详细介绍(推荐)
2019/07/17 Python
基于Python实现ComicReaper漫画自动爬取脚本过程解析
2019/11/11 Python
Python IDE环境之 新版Pycharm安装详细教程
2020/03/05 Python
Python 程序报错崩溃后如何倒回到崩溃的位置(推荐)
2020/06/23 Python
基于Python3读写INI配置文件过程解析
2020/07/23 Python
python re模块和正则表达式
2021/03/24 Python
人力资源部经理岗位职责规定
2014/02/23 职场文书
贯彻落实“八项规定”思想汇报
2014/09/13 职场文书
获奖感言一句话
2015/07/31 职场文书
分享Python获取本机IP地址的几种方法
2022/03/17 Python