V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
firhome
V2EX  ›  程序员

如何监听页面资源的 404 呢?

  •  
  •   firhome · 2022-04-27 15:12:03 +08:00 · 1635 次点击
    这是一个创建于 945 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请教各位大佬,请问前端可以自己 catch 到页面资源的 404 么?

    因为现在都是单页应用,有些脚本是动态加载的( appendChild ),又不可能每个文件去监听。。。

    6 条回复    2022-04-27 19:01:30 +08:00
    lisongeee
        1
    lisongeee  
       2022-04-27 15:34:53 +08:00
    service worker
    julyclyde
        2
    julyclyde  
       2022-04-27 15:36:34 +08:00
    www 服务器有 404Handler 功能
    jKpzPv20NjX56i44
        3
    jKpzPv20NjX56i44  
       2022-04-27 16:47:03 +08:00 via iPad
    changedetection.io 尝试一下?监听网站内容变化的
    musi
        4
    musi  
       2022-04-27 17:14:40 +08:00
    window.addEventListener('error', e => {console.log(e)}, true)
    可以在 e 里拿到具体的 tag 然后分辨资源类型
    opengps
        5
    opengps  
       2022-04-27 18:00:14 +08:00
    先得看是真 404 还是假 404 (正常 200 网页显示的 404 )?按照真实的 404 ,可以访问一下看返回码
    DOLLOR
        6
    DOLLOR  
       2022-04-27 19:01:30 +08:00 via Android
    “有些脚本是动态加载的( appendChild )”
    如果是我理解的构造 script 标签然后添加到 dom 上,那你可以在 appendChild 之前,给 script 监听 onerror 事件。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1020 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 21:13 · PVG 05:13 · LAX 13:13 · JFK 16:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.