出现场景:用户停留在页面不动,也不刷新页面,这个时候前端的代码重新构建上线了,用户请求出错,看到的不是最新的东西
-
出现问题的原因
重新构建后,文件的css,js等文件的hash名称值都已经改变,所以停留在旧页面上请求的静态文件都已经消失了 -
解决办法
当时很蠢,尝试了在每次请求的时候都去后端查询一下最新的版本是什么,从而确定是不是要刷新页面,但是实际的情况却不好处理,最后是在后端nginx有一个类似文件中转站的功能,使得旧文件默认保存一个月,这样不管怎样用户都能请求到原来的文件,也就不会报错了,就是旧的页面请求的就是旧的版本而已