苹果手机safari浏览器的userAgent显示为电脑的userAgent问题解决

目录

1.问题背景

2.userAgent

3.解决


1.问题背景

开发了一个H5,是通过生成二维码,扫描这个二维码后就跳到这个H5,所以需要判断一下扫描的设备是否为手机,然后由于业务逻辑还需要判断一下手机是Android、iOS还是iPad。一般前端的做法是通过浏览器的userAgent来判断,某天有用户保障,说通过苹果手机扫描二维码后H5提示用户设备不是Android或者iPhone。

2.userAgent

简单说下userAgent包含了哪些信息。我们可以在浏览器的开发者工具输入window.navigator.userAgen 获取userAgent。比如:

'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36'

  • Mozilla/5.0: 这是一个历史遗留的标识,大多数现代浏览器仍然使用它作为userAgent的开头。
  • (Macintosh; Intel Mac OS X 10_15_7):这段标识的是用户所使用的操作系统名称、版本号以及体系结构。
  • AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36:这里包含了浏览器引擎及其版本号。

3.解决

推荐一个网站,打开这个网站就能获取到你手机浏览器的userAgent,当然用电脑打开也会获取到,但是电脑我们可以直接看开发者工具,手机H5是无法查看的,所以可以使用这个网站。

UserAgent分析和查询 浏览器UA分析 UA查看 iP138在线工具

通过用户的帮忙,发现用户的苹果手机的userAgent竟然为mac电脑的userAgent,what?难道是组装机? 最后,通过查阅资料,发现用户打开的safari浏览器的桌面模式,safari设置为桌面模式

最后,让用户关掉这个桌面模式就可以正常请求H5了。

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值