问题背景
某项目上线后,打开登录页加载了500多个请求,包含了js、css、png等等。
因为项目部署在第三方云平台,直接被当做恶意攻击,把IP封掉了
如下图:
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/048730902d6b676217dd6d4963e08879.png)
问题分析
Webpack 内置了 prefetch 预加载插件,会告诉浏览器在页面加载完成后,利用空闲时间加载用户未来可能用到的内容。只要关闭 prefetch 插件,就能实现只加载当前页面用到的脚本。
解决方案
在 vue.config.js 添加这行代码:
chainWebpack: config => {
config.plugins.delete("prefetch")
}
再次测试,只剩下 10 个请求了
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/b14a5bb2906626c68e46ce9f43dd34c3.png)