错误监控

错误的捕获方式:
即时运行错误的捕获方式
1try...catch
2) window.onerror

 

资源加载错误
1) object.onerror
2) performance.getEntries()
控制台运行:
performance.getEntries().forEach(item=>{
  console.log(item.name);
})
3) Error事件捕获
 
<script type="text/javascript">
  window.addEventListener('error', function(e){
    console.log('捕获', e);
  }, true) // 默认false,是冒泡,所以要写成true
</script>
<script src="//wwww.baidu.com/test.js"></script>

 

 

 

跨域的js运行错误可以捕获吗,错误提示是什么,应该怎么处理

 

可以,错误信息都是 Script error,行号和列号都无法拿到。因为已经跨域了,没有权限
那么怎么做呢
第一步,在script标签增加 crossorigin 属性
第二步,在服务端,设置js资源响应头 Access-Control-Allow-Origin: *

 

上报错误的基本原理
1、采用Ajax通信的方式上报
2、利用Image对象上报
(new Image()).src="http://baidu.com/test/?r=sdsfsdf";

 

 

posted @ 2019-01-07 06:51  wzndkj  阅读(202)  评论(0编辑  收藏  举报