网络请求异常是怎么了,网络请求数据错误怎么解决

首页 > 实用技巧 > 作者:YD1662024-01-09 02:26:45

六、Script error

一般情况,如果出现 Script error 这样的错误,基本上可以确定是出现了跨域问题。这时候,是不会有其他太多辅助信息的,但是解决思路无非如下:

跨源资源共享机制( CORS ):我们为 script 标签添加 crossOrigin 属性。

网络请求异常是怎么了,网络请求数据错误怎么解决(29)

或者动态去添加 js 脚本:

网络请求异常是怎么了,网络请求数据错误怎么解决(30)

特别注意,服务器端需要设置:Access-Control-Allow-Origin

此外,我们也可以试试这个-解决 Script Error 的另类思路:

网络请求异常是怎么了,网络请求数据错误怎么解决(31)

简单解释一下:

改写了 EventTarget 的 addEventListener 方法;

对传入的 listener 进行包装,返回包装过的 listener,对其执行进行 try-catch;

浏览器不会对 try-catch 起来的异常进行跨域拦截,所以 catch 到的时候,是有堆栈信息的;

重新 throw 出来异常的时候,执行的是同域代码,所以 window.onerror 捕获的时候不会丢失堆栈信息;

利用包装 addEventListener,我们还可以达到「扩展堆栈」的效果:

网络请求异常是怎么了,网络请求数据错误怎么解决(32)

上一页45678下一页

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.