4-4 错误监控

  • 错误监控类有两种问法:一种是直接问你如何监控JS错误,一种是问你如何保证产品的质量
  1. 前端错误分类
    • 即时运行错误(代码错误)
    • 资源加载错误
  2. 错误的捕获方式
    • 即时运行错误捕获方式
      1. try ... catch
      2. window ... onerror
        • 注意:window ... onerror 无法捕捉到资源加载错误,因为资源加载错误是无法冒泡儿到window上去的
    • 资源加载错误捕获方式
      1. object.onerror(图片可以,script标签也是)
      2. performance.getEntries() 它会获取所有已加载资源的时长,通过这种方式可以间接的拿到没有加载资源的错误
        performance.getEntries().forEach(item=>{console.log(item.name)})
      3. Error 事件捕获: 在window上通过事件捕获来截资源加载错误,注意在函数上里要加上一个true,不然就是冒泡儿啦
    • 延伸: 跨域JS 运行错误可以捕获吗?错误提示是什么?应该怎么处理?
      答:可以捕获错误,但是不能拿到相应的具体错误信
      1. 在script 标签增加crossorigin 属性
      2. 设置JS 资源响应头 Acess-Controal-Allow-Origin:*
  3. 上报错误的基本原理
    • 采用Ajax 通信的方式上报
    • 利用Image 对象上报(这是最主要的,也是最常用的方式)

你可能感兴趣的:(4-4 错误监控)