根据 UserAgent 判断网页是在浏览器、或在微信、或在APP中
根据 UserAgent 是否存在 Android,或 iPhone 可以判断网页是运行在 苹果手机 或 微信手机中。具体是安卓的在 微信中、还是在浏览器中、还是在APP中,在iPhone的 微信中、还是在浏览器中、还是在WebApp中,都可以通过UserAgent来判断。
前端JS 获取 UserAgent 可以使用:navigator.userAgent。
后端程序可以使用 HTTP_USER_AGENT 来获取。比如PHP可以用 $_SERVER[‘HTTP_USER_AGENT’],asp可以用 Server.Servervariables(‘HTTP_USER_AGENT’) 。
安卓手机
APP/WebView
1
|
Mozilla/5.0 (Linux; Android 6.0.1; MX4 Build/MOB30M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/51.0.2704.106 Mobile Safari/537.36
|
微信
1
|
Mozilla/5.0 (Linux; Android 6.0.1; MX4 Build/MOB30M) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/37.0.0.0 Mobile MQQBrowser/6.8 TBS/036849 Safari/537.36 MicroMessenger/6.3.27.880 NetType/WIFI Language/zh_CN
|
浏览器
1
|
Mozilla/5.0 (Linux; Android 6.0.1; MX4 Build/MOB30M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.154 Mobile Safari/537.36
|
存在 Version,是App(微信或APP)内部的WebView
微信存在 MicroMessenger/ NetType/ Language/
不存在则为其他APP
其他模式为浏览器
苹果手机
webapp
1
|
Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_2 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Mobile/14A456
|
微信/WebView
1
|
Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_2 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Mobile/14A456 MicroMessenger/6.3.27 NetType/WIFI Language/zh_CN
|
浏览器
1
|
Mozilla/5.0 (iPhone; CPU iPhone OS 10_0_2 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) Version/10.0 Mobile/14A456 Safari/602.1
|
微信存在 MicroMessenger/ NetType/ Language/
手机浏览器存在 Version/XX.XX Mobile/XX.XX
啥都不存在是WebApp,还有个 window.navigator.standalone 判断
根据 UserAgent 判断网页是在浏览器、或在微信、或在APP中相关推荐
- 过http user-agent判断是否为手机浏览器
我们做Web开发的时候,常常需要判断用户是否是使用手机访问网站,从而决定如何页面任何展示给用户,以提高用户体验,这时需要用到判断浏览器类型的代码: 下面PHP函数可以根据http user-agent ...
- php 判断是否为安卓,通过http user-agent判断是否为手机浏览器
我们做Web一很等指似很一者下插近直好一的的有段文,开发的时候,常常需要判断用户是否是使用手机访问网站,从而决定如何页面任何展示给用户,以提高用户体验,这时需要用到判断浏览器类型的代码调代求学功解宗维 ...
- php http agent,PHP通过http头user-agent判断是否为手机浏览器
下面PHP自定义函数可以根据http头user-agent判断是否为手机访问,如果是则返回true: /** * 判断是否是通过手机访问 * @return bool 是否是移动设备 */ publi ...
- 安卓内嵌浏览器打开不微信等外部app的问题
做项目时要求在内嵌浏览器内完成微信支付宝等支付,支付时要如果安装了应该要跳转.遇到的问题是在要跳转时失败,原因是内嵌浏览器没有设置好client,示例代码如下: DisplayMetrics dm = ...
- 微信公众平台开发--判断终端使用的浏览器是否是微信浏览器
//如果是微信浏览器返回true,否则返回false,并跳转到指定页面 if(isWeiXin()==false) { window.location.href='http://www.baidu.c ...
- android用qq浏览器打开微信网页版,QQ浏览器怎么打开微信小程序?
继微信.QQ 之后,QQ 浏览器上也可以使用小程序了. 现已实现与微信小程序打通.QQ 浏览器 Android 版现已上线小程序,在搜索的场景下,小程序嵌入 QQ 浏览器「搜索直达」,作为直接的内容承 ...
- 通过 UserAgent 判断是否在我们自己的安卓APP中
之前 写过一篇 根据 UserAgent 判断网页是在浏览器.或在微信.或在APP中 (http://www.miaoqiyuan.cn/p/useragent-in-where),那篇文章能通过 U ...
- 判断网页是否为微信内置浏览器打开?
文章目录 (两种方法)教你:"如何判断网页是不是在微信端内置浏览器打开?" 本文根据项目开发实际情况,着重探讨在微信内置浏览器中调用支付功能,遇到的几个坑! 目的: (方法一)全部 ...
- JS使用userAgent判断操作系统和浏览器类型
1.应用场景: 在做ios和android应用时,需要扫码进行应用的下载,可以通过扫描一个二维码,然后跳到指定的页面,页面中使用js判断操作系统和浏览器类型,然后给出不同的下载地址.这样就可以实现an ...
最新文章
- 航空频率表 2020_飞亚达2020时光勋章品牌年会——往昔作序,来日为章
- java可以调用python程序吗_我们可以从java调用python方法吗?
- 微信开发-ACCESS TOKEN 过期失效解决方案
- Algorithm:C++语言实现之图论算法相关(图搜索广度优先BFS、深度优先DFS,最短路径SPF、带负权的最短路径Bellman-ford、拓扑排序)
- 七、Sqoop架构,安装和基本使用
- wso2 esb_通过运行示例从WSO2 ESB开始
- 2017.9.15 postgresql批量插入造成冲突后执行更新
- BurpSuite下载CA证书
- mysqlbinlog相关
- Facebook又开两处AI实验室,在西雅图和匹兹堡招兵买马
- 达芬奇调色软件被曝两个远程代码执行缺陷
- C盘\用户目录下\管理员文件夹 如何重命名?
- Vue中解决数据量过大导致页面崩溃;解决方案
- OpenGl学习笔记二:创建自己的着色器
- C语言如何打开shx文件,shx文件怎么打开?Win7打开shx文件的操作方法
- 小学生计算机校本课程教材,二年级校本课程教材
- svg html转换器,如何在浏览器中使用JavaScript将HTML SVG节点转换为Base64
- html学习阶段总结2
- nginx禁止外网访问
- C语言三角分解非奇异矩阵为L、U矩阵