# ScriptError是什么,如何处理
# 1、Script Error是如何产生的
- 跨域资源引用
如:<code>a.com</code> 下的页面引用了属于 http://b.com (cdn服务) 的 demo.js 文件。若运行中demo.js内部报了一个异常,那么探针只会检测到一个 script error的异常。这是由于浏览器基于安全考虑故意隐藏了其它域JS文件抛出的具体错误信息。
# 2、如何解决
- 给script标签增加 <code>crossorigin</code> 属性。
<script src="http://b.com/demo.js" crossorigin></script>
// 或
<script src="http://b.com/demo.js" crossorigin='anonymous'></script>
- 给静态资源服务器的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使用进阶》。