V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
dbfox
V2EX  ›  问与答

如何通过一个网址,判断当前设备的网络类型( 3G wifi)?

  •  
  •   dbfox · 2016-06-01 14:16:01 +08:00 · 2560 次点击
    这是一个创建于 2890 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我能想到的是通过获得 IP (通过 IP 可以得知是电信、还是移动、联通的)
    还有没有其它办法?
    10 条回复    2016-06-01 17:57:54 +08:00
    4679kun
        1
    4679kun  
       2016-06-01 14:18:10 +08:00 via Android   ❤️ 1
    ipip.net 实测能识别 3G
    loyd1234
        2
    loyd1234  
       2016-06-01 14:55:41 +08:00
    @4679kun 403
    4679kun
        3
    4679kun  
       2016-06-01 14:58:51 +08:00 via Android
    notgod
        4
    notgod  
       2016-06-01 17:10:30 +08:00
    首先
    前端是肯定无法判断的
    只能另想办法,能收集到的数据 就是 UA 和 IP 地址
    所以只能根据 IP 地址来判断设备网络类型

    基于 IP 数据库的准确性 这个判断准确性并不高
    因为 IPv4 地址已枯竭 经常出现分配给 A 省的 IP 跑 B 省去了
    分配给移动的网段和 IP 池 也会分配给部分 wifi 热点 在大城市这个问题尤其突出
    根据你的需求
    判断电信联通移动这种结果用处并不大

    结论 除非你有内部的 API 得到内部的 IP 池分配表
    否则基本不太现实
    BOYPT
        5
    BOYPT  
       2016-06-01 17:13:31 +08:00
    要是做微信里面浏览器的话 UA 里面有说现在是 Wifi 还是 3G
    newbieo0O
        6
    newbieo0O  
       2016-06-01 17:23:43 +08:00
    @notgod 不要太早下结论。 navigator.connection.type
    loading
        7
    loading  
       2016-06-01 17:26:27 +08:00 via Android
    我用长城宽带,根据 ip ,我一直在广州和天津…
    ys0290
        8
    ys0290  
       2016-06-01 17:32:58 +08:00 via iPhone
    然而手机上网都是要回归属地的,虽然我在外地,挨批依然在归属地
    notgod
        9
    notgod  
       2016-06-01 17:34:31 +08:00
    @newbieo0O
    也许我能力有限 如果对准确度要求高的 我是没方案

    你说的 navigator.connection.type ,这种 API 的标准 并不符合中国网络大环境

    主要的原因在于
    1. 各种换壳的浏览器 改的原版他妈都不认识 兼容性渣
    2. 越新的 W3C 标准 对旧浏览器支持太差 (国内 XP 用户还有很多)
    3. 原生接口使用的普及度 需要 IE/火狐 /Chrome 的共同支持才有能力普及和推动
    如果从商用产品方向考虑 这种目前基本属于鸡肋 根据以往的 W3C 标准从发布到成熟
    要 long time long time long time long time
    ncisoft
        10
    ncisoft  
       2016-06-01 17:57:54 +08:00 via Android
    借助智能 DNS 解析有多点接入的大厂域名?比如 dnspod 的移动解析 D+,可以试试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1866 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 00:20 · PVG 08:20 · LAX 17:20 · JFK 20:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.