vue增加强缓存和版本号的实现方法


Posted in Javascript onMay 01, 2019

强缓存:

到底什么是强缓存?强在哪?其实强是强制的意思。当浏览器去请求某个文件的时候,服务端就在respone header里面对改文件做了缓存配置。缓存的时间、缓存类型都由服务端控制。

vue增加强缓存和版本号的实现方法

强缓存实现:

cache-control: max-age=315360000, public ,immutable

客户端和代理服务器都可以缓存该资源,在315360000秒(10年)的有效期内,如果有请求该资源的需求的话就直接读取缓存,statu code:200 ,即使用户做了刷新操作,也不向服务器发起http请求

参考文章"彻底弄懂强缓存与协商缓存"

index.html文件采用协商缓存,理由就是要用户每次请求index.html不拿浏览器缓存,直接请求服务器,这样就保证资源更新了,切记不要设置强缓存!!!

其他资源采用强缓存 + 协商缓存,理由就不多说了。

nginx配置

vue增加强缓存和版本号的实现方法

版本号管理在

.env.production 生产模式

.env.test 测试模式

VUE_APP_VERSION = T0.01 测试模式
VUE_APP_VERSION = V0.01 生产模式

在package.json配置了打包命令

npm run build   正式环境配V0.01版本号
npm run build:test 测试环境配T0.01版本号

通过webpack打包设置,name+版本号+时间戳.js

可以根据服务器设置强缓存,缓存静态文件

configureWebpack: {
    output: { // 输出重构 打包编译后的 文件名称 【模块名称.版本号.时间戳】
      filename: `[name].${process.env.VUE_APP_VERSION}.${timeStamp}.js`,
      chunkFilename: `[name].${process.env.VUE_APP_VERSION}.${timeStamp}.js`,
     },
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
分享Javascript中最常用的55个经典小技巧
Nov 29 Javascript
vue 2.0路由之路由嵌套示例详解
May 08 Javascript
微信小程序图片自适应支持多图实例详解
Jun 21 Javascript
AngularJS实现单一页面内设置跳转路由的方法
Jun 28 Javascript
jQuery修改DOM结构_动力节点Java学院整理
Jul 05 jQuery
解决Mac安装thrift因bison报错的问题
May 17 Javascript
微信小程序实现两个页面传值的方法分析
Dec 11 Javascript
express.js中间件说明详解
Mar 19 Javascript
node.js文件操作系统实例详解
Nov 05 Javascript
javascript设计模式 ? 组合模式原理与应用实例分析
Apr 14 Javascript
vue.js实现双击放大预览功能
Jun 23 Javascript
OpenLayers3加载常用控件使用方法详解
Sep 25 Javascript
vue组件化中slot的基本使用方法
May 01 #Javascript
Vue基本使用之对象提供的属性功能
Apr 30 #Javascript
原生JS实现随机点名项目的实例代码
Apr 30 #Javascript
vue实现随机验证码功能的实例代码
Apr 30 #Javascript
详解vue 图片上传功能
Apr 30 #Javascript
vue移动端屏幕适配详解
Apr 30 #Javascript
vue-cli3 项目优化之通过 node 自动生成组件模板 generate View、Component
Apr 30 #Javascript
You might like
浅谈电磁辐射对健康的影响
2021/03/01 无线电
一个简单的域名注册情况查询程序
2006/10/09 PHP
table标签的结构与合并单元格的实现方法
2013/07/24 PHP
PHP中使用file_get_contents post数据代码例子
2015/02/13 PHP
PHP反射学习入门示例
2019/06/14 PHP
json格式的时间显示为正常年月日的方法
2013/09/08 Javascript
Document:getElementsByName()使用方法及示例
2013/10/28 Javascript
兼容主流浏览器的jQuery+CSS 实现遮罩层的简单代码
2014/10/14 Javascript
JS逆序遍历实现代码
2014/12/02 Javascript
javascript中return,return true,return false三者的用法及区别
2015/11/17 Javascript
JavaScript记录光标在编辑器中位置的实现方法
2016/04/22 Javascript
webpack实现热更新(实施同步刷新)
2017/07/28 Javascript
vue项目中的webpack-dev-sever配置方法
2017/12/14 Javascript
基于vue.js实现的分页
2018/03/13 Javascript
vue写一个组件
2018/04/09 Javascript
vue 路由嵌套高亮问题的解决方法
2018/05/17 Javascript
微信小程序实现横向滚动导航栏效果
2019/12/12 Javascript
使用vue实现HTML页面生成图片的方法
2020/03/12 Javascript
[02:17]DOTA2亚洲邀请赛 RAVE战队出场宣传片
2015/02/07 DOTA
Python3基础之条件与循环控制实例解析
2014/08/13 Python
python使用calendar输出指定年份全年日历的方法
2015/04/04 Python
python更改已存在excel文件的方法
2018/05/03 Python
python 读取Linux服务器上的文件方法
2018/12/27 Python
详解django2中关于时间处理策略
2019/03/06 Python
Python基础之条件控制操作示例【if语句】
2019/03/23 Python
使用python接入微信聊天机器人
2020/03/31 Python
Python while true实现爬虫定时任务
2020/06/08 Python
HTML5实现签到 功能
2018/10/09 HTML / CSS
移动通信行业实习自我鉴定
2013/09/28 职场文书
大学生专科毕业生自我评价
2013/11/17 职场文书
美德少年事迹材料
2014/01/23 职场文书
党员进社区活动总结
2015/05/07 职场文书
追讨欠款律师函
2015/05/27 职场文书
超市员工管理制度
2015/08/06 职场文书
成人成长感言如何写?
2019/08/16 职场文书
Redis源码阅读:Redis字符串SDS详解
2021/07/15 Redis