首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么NetworkInformation.effectiveType要给我一个4g网络而不是wifi?

为什么NetworkInformation.effectiveType要给我一个4g网络而不是wifi?
EN

Stack Overflow用户
提问于 2021-04-01 05:57:05
回答 1查看 797关注 0票数 1

我正在使用网络信息API获取网络类型。

代码语言:javascript
复制
var connection = navigator.connection || navigator.mozConnection || navigator.webkitConnection;

// output in Microsoft edge browser console
// {onchange: null, effectiveType: "4g", rtt: 100, downlink: 1.5, saveData: false}

我在使用公司的无线网络。我希望effectiveType属性的值应该是wifi。因为我有这样的代码逻辑:

代码语言:javascript
复制
if(effectiveType === 'wifi') {
  // Do something
} else if (effectiveType === '4g') {
  // Do other things 
}

这有可能吗?我找到了NetworkInformation.type的只读属性,但它给了我undefined。它不支持边缘。

我看到EffectiveConnectionType enum没有wifi值。

环境:

  • macOS 10.15.7
  • Microsoft Edge 89.0.774.63
EN

回答 1

Stack Overflow用户

发布于 2021-10-01 13:54:02

如果您查看W3C上的API规范wifi不是“有效的连接类型”之一。EffectiveConnectionType枚举使用4g作为快速可靠连接的最高名称。

type属性在navigator.connection上使用枚举作为其值,因此wifi是其可能的值之一。但是,API接口,所以Edge总是说typeundefined

如果您在生产中使用基于这种技术的特性,我会倾向于使用effectiveType,但NetworkInformation API仍然是一种实验性技术,即非官方草案不支持跨浏览器

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66899110

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档