• 请不要在回答技术问题时复制粘贴 AI 生成的内容
chenjia404
V2EX  ›  程序员

怎么让用户自愿升级浏览器,少扛几年兼容成本

  •  
  •   chenjia404 ·
    chenjia404 · 1 day ago via Android · 6151 views

    为旧内核养 polyfill 、关新语法,才是前端里最贵的长期税。用户通常不知道自己的浏览器已经过时,强跳下载页又像在赶人。

    我做了个可以嵌在自己站点里的接口,不用把用户转到我这边。前端直接 fetch ,用访客 User-Agent 查这个版本还匹配多少已知 CVE ,在你自己的页面上提一句就行。

    const res = await fetch("https://ismybrowsersafe.org/api/v1/lookup");
    const data = await res.json();
    if (data.ok && data.count > 0) {
      // 例如:当前浏览器可能仍受 128 个已公开漏洞影响,建议升级
    }
    

    跨域可用,没有 API Key 。不保存 UA ,也不会利用漏洞。空口说「请升级」没体感,对着一堆已公开漏洞,用户更愿意自己升,你后面就能少兼容一批旧内核。

    文档: https://ismybrowsersafe.org/docs
    检测站: https://ismybrowsersafe.org/

    56 replies    2026-08-19 22:29:07 +08:00
    cz5424
        1
    cz5424  
       1 day ago
    不太准,我 macos 上打开显示我是 version: "151.0.0.0"实际上是最新的 version: "151.0.7922.138"
    拥有 count: 416 个漏洞
    chenjia404
        2
    chenjia404  
    OP
       1 day ago
    @cz5424 小版本匹配问题,正在修复。
    chenjia404
        3
    chenjia404  
    OP
       1 day ago
    @cz5424 修复了,151 这种就按这个大版本里面最新的计算。
    nc
        4
    nc  
       1 day ago
    https://github.com/Modernizr/Modernizr

    这库都存在十几年了,有需要用它就好了。楼主这个第三方服务,不稳定性太大
    chenjia404
        5
    chenjia404  
    OP
       1 day ago
    @nc 我这个功能主要是引导用户升级浏览器,晚点我也可以开源到 GitHub ,大家自己部署。
    docx
        6
    docx  
       1 day ago via iPhone   ❤️ 5
    真想升级的用户早升了,不升级的打死也不会升的(
    duanxianze
        7
    duanxianze  
       1 day ago
    做成客户端啊,自带 webview ,只有这一个办法
    DingJZ
        8
    DingJZ  
       1 day ago
    浓郁的 AI 味道
    yangg
        9
    yangg  
       1 day ago via Android   ❤️ 3
    没用,钉钉,企业微信内置一个比一个版本低
    wu67
        10
    wu67  
       1 day ago via iPhone
    我是让 ai 随便写写兼容,懒得管他们,连浏览器都不愿意升级的人,你指望他给你产品付费吗?
    haha1
        11
    haha1  
       1 day ago
    浏览器升级引起的事故,我碰到得太多了,不要说让用户升级了,我自己的开发机都强行将 chrome 稳定在了某个版本。
    现在不是 ie 时代,大部分用户的浏览器版本都在 chromium90 版本以上,90 版本后,chrome 基本都是小修小补,没啥大改动。
    getadoggie
        12
    getadoggie  
       1 day ago via iPhone
    站在用户的角度去调研他们为什么没有升 是因为单纯懒得升(即升级成本)还是有自己的理由
    getadoggie
        13
    getadoggie  
       1 day ago via iPhone
    帮他们解决问题 问题自然解决
    inktiger
        14
    inktiger  
       1 day ago
    做个自动更新的,有的用户不是不想升,是压根不会,给他弹页面这些也是看都不看直接关,强制升又确实会让人反感
    datocp
        15
    datocp  
       1 day ago via Android
    这事

    chrome 喜欢升级,有些第三方的打印插件会出问题,全部换成 chromium 绿色版,停留版本号。

    巨硬够有名了吧!!!为了在用户电脑安装上 edge ,现在是连 Windows server 2019 在 sysprep 后应该是 services.msc 内置服务进程,一安装完系统,edge 这个毒瘤又在线安装了!!!
    liulihaocai
        16
    liulihaocai  
       1 day ago via Android   ❤️ 1
    如果我访问网站给我弹出来一个浏览器有漏洞需要升级的弹窗,我一般会认为是 PUP 钓鱼广告
    chenjia404
        17
    chenjia404  
    OP
       1 day ago via Android
    @liulihaocai 确实很像钓鱼,哈哈哈
    caola
        18
    caola  
       1 day ago
    最新的 Firefox 浏览器,居然显示“浏览器明显过旧”,你这也太水了吧
    caola
        19
    caola  
       1 day ago
    是我的问题,落后了一个版本与落后很多个版本表现得有点问题,建议落后一定版本数量就红色提醒,落后不多就黄色提醒,最新就是绿色显示……
    chenjia404
        20
    chenjia404  
    OP
       1 day ago via Android
    @caola get ,vibe 一下
    lovelyidiot
        21
    lovelyidiot  
       20h 32m ago
    人是分类的
    一类人追求最新,不管是 alpha 还是 beta ,有新必用
    一类人是追新版本,GA 必更
    一类人是随遇而安的,给什么用什么
    一类人是追稳的,用到一个稳定版本,打不死就一直用
    一类人是啥也不知道的,啥是版本,啥是升级
    不要试图改变别人的思维模式和认知~做你该做的
    sir283
        22
    sir283  
       20h 4m ago   ❤️ 2
    你应该要从用户角度去思考这种问题,用户为什么要为了你的新语法而去升级浏览器呢?你只顾自己爽了,但是没有考虑到用户爽不爽,反过来用户也是这样想的,但是你是服务方,用户是客户方,只能你去适配用户,而不是用户反过来适配你,能明白嘛?
    tiaod
        23
    tiaod  
       19h 41m ago
    能升的早就自动升了,剩下的是升不起来的,现在 AI 时代了,你说的那点兼容的工作量根本不是问题
    lscho
        24
    lscho  
       19h 31m ago via Android   ❤️ 6
    v 站已经脱离普通用户了,从上面的回复我没看到一个普通用户浏览器现状的。。。

    国内普通用户大部分浏览器用的都是什么搜狗、360 浏览器等 这些垃圾玩意,内置的内核升级权利都不在用户手里。
    剩下的知道用谷歌浏览器的又被墙挡掉 99% 的人,我见过很多用户谷歌浏览器提示更新了,但是点击更新就失败。

    只有极少数网络畅通的,一般都会升级。

    所以这也是套壳客户端盛行的原因,至少能控制兼容性
    superrichman
        25
    superrichman  
       19h 10m ago
    直接筛选掉用户,少很多麻烦事情 🐶
    givenge
        26
    givenge  
       19h 9m ago
    chrome 更新怎么不直接给我跳 chrome://settings/help
    ifbiger
        27
    ifbiger  
       19h 8m ago
    跟他说老版本有严重的病毒漏洞
    iv8d
        28
    iv8d  
       19h 6m ago
    为什么要升级,运行的好好的,为了给自己找麻烦吗,别人花钱的也
    raysonlu
        29
    raysonlu  
       18h 52m ago
    说句可能不太好听的话:如何提升身边人的智商情商,让自己生活好过些(逃
    TimPeake
        30
    TimPeake  
       18h 50m ago
    直接检测告诉他,当前浏览器版本是 2009 年发布的,大概率他会不好意思,自己想办法去升级
    vone
        31
    vone  
       18h 41m ago
    Microsoft Edge 是最新版本。
    版本 151.0.4129.93 (正式版本) (64 位)
    "count": 431
    {
    "ok": true,
    "source": "header",
    "browser": {
    "id": "edge",
    "name": "Microsoft Edge",
    "version": "151.0.4129.93"
    },
    "engine": {
    "id": "chromium",
    "name": "Chromium",
    "version": "151.0.4129.93"
    },
    "latest": {
    "version": "151.0.4129.93"
    },
    "os": "windows",
    "architecture": "x86_64",
    "status": "critical",
    "riskScore": 1735,
    "confidence": "low",
    "estimated": true,
    "majorVersionsBehind": 0,
    "count": 431,
    "vulnerabilities": {
    "total": 431,
    "critical": 64,
    "high": 126,
    "medium": 224,
    "low": 17
    },
    "knownExploited": 0,
    "securityFixesSinceVersion": 431,
    "recommendation": {
    "action": "update",
    "message": "Update Microsoft Edge to the latest version. Latest stable: 151.0.4129.93.",
    "messageKey": "recommend.update_edge"
    }
    }
    yanyoo2000
        32
    yanyoo2000  
       18h 36m ago
    @lscho 在理
    cirzear
        33
    cirzear  
       18h 33m ago
    实际是现场用户怕自己升级后自己书签配置啥的丢了,emmm 没办法,用户认定了,解释半天都是徒劳的,只能默默适配
    xdzhang
        34
    xdzhang  
       18h 19m ago
    有些用户百度上下的 chrome 都不知道是个啥。。。。
    Topmax
        35
    Topmax  
       18h 15m ago
    直接全屏提示浏览器更新让客户下载安装最新 chrome
    Bromine0x23
        36
    Bromine0x23  
       17h 28m ago
    谁让 chrome 天天更新屎呢
    fstab
        37
    fstab  
       16h 57m ago
    思路错了,在中国大陆,访问谷歌非常困难,大部分用户都是套壳浏览器用户,普通用户决定不了升级浏览器内核。
    你应该每天发邮件给各个套壳浏览器的公司,让他们开发积极一点,用上百个看起来真实的邮箱,轮询发送。
    就算他们产品视而不见,也要恶心他们 - - 。
    onload
        38
    onload  
       16h 40m ago
    再多的漏洞,除非有人专门来搞你,不然日常使用基本都不会遇上..
    MYDB
        39
    MYDB  
       16h 35m ago
    我宁愿有漏洞也不升级,不会去为了几个兼容性差的网站或软件去改自己这一端的环境
    dudubaba
        40
    dudubaba  
       16h 32m ago
    你这还是陈年思想了,现在能用 chrome 的都是有问题就让下最新版,不能用 chrome 的都是政企里老掉牙的电脑,更不会搞这些了。
    shilianmlxg
        41
    shilianmlxg  
       16h 30m ago
    忽悠啊,说 qq 浏览器快,网速会变快,就叫他们安装
    或者 360 安全浏览器快,又安全。

    其实是看哪个浏览器内核高,让他用哪个。
    whitehack
        42
    whitehack  
       14h 17m ago
    995 个.恐怖我这浏览器是不是就是炸弹

    {"ok":true,"source":"header","browser":{"id":"edge","name":"Microsoft Edge","version":"150.0.0.0"},"engine":{"id":"chromium","name":"Chromium","version":"150.0.0.0"},"latest":{"version":"151.0.4129.93"},"os":"macos","architecture":"","status":"critical","riskScore":4030,"confidence":"low","estimated":true,"majorVersionsBehind":1,"count":995,"vulnerabilities":{"total":995,"critical":135,"high":329,"medium":504,"low":27},"knownExploited":0,"securityFixesSinceVersion":995,"recommendation":{"action":"update","message":"Update Microsoft Edge to the latest version. Latest stable: 151.0.4129.93.","messageKey":"recommend.update_edge"}}
    linkopeneyes
        43
    linkopeneyes  
       12h 0m ago
    没用的手机上是完全没办法解决,比如跟着系统走的 ios,用户不准备升级你都没办法,比如 ios 某个版本之前不支持 regexp,安卓如果 h5 嵌在什么钉钉微信浙里办里更是重灾区,到现在都不支持阴影,fetch 只支持一点点,也不知道干嘛要魔改
    AV1
        44
    AV1  
       11h 44m ago
    electron 为什么会流行,就是大家都不愿更新,那只能自己套壳了🐶。
    xrds7986
        45
    xrds7986  
       11h 22m ago via Android
    qq 瀏览器 chrome 94.0.xxxx.xx ,3275 己知漏洞。昇級了以后,廣告拦截,webrtc ,都不正常了,咋整?
    goodSleep
        46
    goodSleep  
       9h 12m ago
    直接给用户发红包?
    NewYear
        47
    NewYear  
       8h 2m ago
    作为 IT 行业人员,我几个手机浏览器都是默认版本的,应用商店还不支持升级,需要各种手动操作可能还要用到电脑对接。

    你真的是太看得起你的用户了

    有的浏览器更是阉割功能,比如 edge/chrome 在手机版不支持安装拓展( edge 支持过一段时间,之后又阉割了)


    总之理由很多,但绝对没有一个理由是为了兼容你的网站去升级,太麻烦了。
    NewYear
        48
    NewYear  
       7h 58m ago
    反正在 V2 看到很多程序员都是,自己不用旧版本,旧系统,就认为全天下都不该有人用旧系统。

    例如 win7 人家用得好好的,非要逼着升 win10 那硬件不升级怎么装嘛。。过几年又要开始抛弃 win10……

    还有编程语言版本也歧视,旧项目没事找事去重构一下?疯了吧。工作成本、出事故算谁的。


    所以根本原因不是逼迫用户升级,而是搞好兼容配好 polyfill 之类的就行了,因为你只提出问题,不解决问题,客户不可能跟的。
    Gxin
        49
    Gxin  
       7h 57m ago
    用 wasm 造轮子
    NewYear
        50
    NewYear  
       7h 55m ago
    微软的 .Net(C#)也是你这个思路,对用户环境挑剔得很。

    跨平台已经搞了 10 年了,结果还是个风味版的跨平台。

    有跨平台需求的时候选型总能看到 dotnet ,结果每次都无法当选,为啥?因为运行库/编译产物在目标环境无法运行。

    C#多好啊,全给这个思路给坑了,只能选其他语言,用户量怎么上得去嘛。
    1258
        51
    1258  
       7h 45m ago
    兼容旧浏览器,有时候就是产品存在的价值
    ymy3232
        52
    ymy3232  
       7h 43m ago
    UC 浏览器 QQ 浏览器 360 浏览器 微信浏览器这些的开发者才能决定用户升不升级 你要做的是去适配这些浏览器 能主动升级的是极少数
    zhengfan2016
        53
    zhengfan2016  
       6h 33m ago
    很简单,搞个 pdd 活动,恭喜你抽中现金红包 49.90 元,满 50 元可以提现,每抽一次随机给 0.01 到 0.02 元,三次抽奖机会,用完了提示完成任务获得更多机会,置顶任务放一个:更新 chrome 浏览器到 151.0 以上版本可以获得 3 次抽奖机会
    wakarimasen
        54
    wakarimasen  
       6h 12m ago
    兼容性就是咱们 Web 的一个核心竞争力和 Feature

    不想兼容请左转 App Store 苹果会帮你教育用户(
    kamikaze472
        55
    kamikaze472  
       6h 6m ago
    @wakarimasen #54 太真实了, 我 ios15, 国外 ai 一个都用不了
    Lightbright
        56
    Lightbright  
       5h 44m ago
    首先你这个检测就是有问题的,Chromium 发新版了旧版又不是不维护了
    可以去这 https://chromiumdash.appspot.com/schedule 看一下,新版发布之后,旧的 LTS 版本仍然会维持相当一段时间的安全更新
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   959 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 103ms · UTC 20:13 · PVG 04:13 · LAX 13:13 · JFK 16:13
    ♥ Do have faith in what you're doing.