# ScriptError是什么,如何处理


# 1、Script Error是如何产生的


  • 跨域资源引用


如:<code>a.com</code> 下的页面引用了属于 http://b.com (cdn服务) 的 demo.js 文件。若运行中demo.js内部报了一个异常,那么探针只会检测到一个 script error的异常。这是由于浏览器基于安全考虑故意隐藏了其它域JS文件抛出的具体错误信息。



# 2、如何解决


  1. 给script标签增加 <code>crossorigin</code> 属性。

<script src="http://b.com/demo.js" crossorigin></script>

// 或

<script src="http://b.com/demo.js" crossorigin='anonymous'></script>




  1. 给静态资源服务器的HTTP增加响应头

Access-Control-Allow-Origin: *

// 或

Access-Control-Allow-Origin: http://a.com




# 3、已添加 crossorigin 依然有 script error


  • 原因:因部分浏览器对crossorigin属性不支持,因此依然可能产生script error。
  • 如何解决:若少量的script error还会影响您业务的判断,可采取对script error进行过滤,在初始化探针时,设置<code>ignoreScriptError</code>为 true即可,详情参照 《探针API使用进阶》



# 4、参考