这里举个例子:

通过Python管理静态资源。但有时候,js或者css更新了,浏览器不知道,还使用缓存的情况。

如下所示:

通过在url中带个?这种方式,使得浏览器去获取新的资源

看下根请求下相关链接:

后面这一串是根据时间产生的随机数。

如果是开发环境,我们通过这种方式,使得客户端浏览器都获取到新的资源。

生产环境,通过文件进行指定版本:

相关的python代码如下:

在配置文件夹中新增:

在静态资源管理文件中,local_setting.py中配置了这个文件,就读一行,也就是版本号,如果没有,就使用随机数据去做,相关代码如下:

UrlManager.py

from application import app
from common.libs.DataHelper import getCurrentTime
import osclass UrlManager(object):@staticmethoddef buildUrl(path):config_domain = app.config['DOMAIN']return "%s%s" % (config_domain['www'], path)@staticmethoddef buildStaticUrl(path):path = "/static" + path + "?ver=" + UrlManager.getReleaseVersion();return UrlManager.buildUrl(path)#版本管理#开发模式 使用时间作为版本号#生产模式 使用版本文件进行管理@staticmethoddef getReleaseVersion():ver = "%s" % (getCurrentTime("%Y%m%d%H%M%S%f"))release_path = app.config.get("RELEASE_PATH");if release_path and os.path.exists(release_path):with open(release_path, "r") as f:ver = f.readline()return verreturn ver

其中getCurrentTimer如下:

DataHelper.py

import datetimedef getCurrentTime(frm = "%Y-%m-%d %H:%M:%S"):dt = datetime.datetime.now()return dt.strftime(frm)

app.config.get(XXX)中这个app是在核心文件(核心变量定义文件中定义的)

如下:

Web笔记-通过版本号控制客户端浏览器中的缓存相关推荐

  1. python 网页调试_使用Django 2.0构建Python Restful Web服务:七)在浏览器中浏览和调试restful接口...

    一.前言 在之前的文章中,我们创建好的web接口都通过Postman这个软件调用各种HTTP请求方法来进行调试和查看,这样返回的结果很容易被编程语言和应用程序所接收和识别,但是却并不便于我们直观的查看 ...

  2. 微信浏览器中清楚缓存

    1.最近在开发微信公众号中,写好的H5页面在微信中遇到了缓存,给开发和测试造成了不少麻烦.分别总结了ios和Android清除缓存的方法. 2.Android中 在微信任意窗口中国打开http://d ...

  3. 基于WEB的Office文档打印——浏览器中静默打印Word文档

    web应用开发中,如何集成Office文档打印功能,并不是一个容易实线的问题.现在有了打天下web打印插件,仅以几行JS代码就可以让你将Office打印功能集成到你的Web项目中. 引入PrintWo ...

  4. php怎么启用浏览器缓存,如何停用浏览器中的缓存? - php

    例如,如果退出Yahoo邮件,然后单击"后退"按钮,它将不会加载最后一页,而是会将您重定向到登录页面. 我必须使用PHP代码来执行此操作,而我正在使用CodeIgniter. 一些 ...

  5. Java Web笔记总结

    Tomcat Tomcat的下载及配置 tomcat官网地址 解压就可以使用了 启动tomcat 访问tomcat服务器 localhost:8080 Htpp 什么是http HTTP协议(Hype ...

  6. 在浏览器中输入网址后的流程

    1.浏览器发起DNS查询请求 在广域网中是基于IP地址进行通信的.但通常客户访问的是一个网址,为此需要先得到网址对应的IP地址,这就需要域名服务系统将域名转换成IP地址.在客户端浏览器中输入网址时,浏 ...

  7. 浏览器中显示PPT的展示效果

    发现了一个PPT的WEb展示的方法,在浏览器中载入PDF文件之后,可以实现基于WEB的页面展示,支持全屏与自动播放. https://sharedoc.onk.ninja/ 这不失为一种可行的方式,且 ...

  8. 文档预览:在浏览器中预览查看 Office 文档

    您的网站或博客上是否有希望读者查看的 Office 文档,即使他们没有安装 Office?您愿意在下载之前查看文档吗?要为您的观众提供更好的体验,请尝试使用 Office Web 查看器. 什么是 O ...

  9. 透过浏览器看HTTP缓存(转)

    作为前端开发人员,对于我们的站点或应用的缓存机制我们能做的似乎不多,但这些却是与我们关注的性能息息相关的部分,站点没有做任何缓存机制,我们的页面可能会因为资源的下载和渲染变得很慢,但大家都知道去找前端 ...

最新文章

  1. 【Qt】通过QtCreator源码学习Qt(三):linux平台的信号、程序崩溃处理
  2. ubuntu下使用Eclipse下搭建c开发环境
  3. Python解决数独
  4. ELK+Kafka 企业日志收集平台(二)这是原版
  5. 博客园升级有感一点建议
  6. Java生鲜电商平台-团购模块设计与架构
  7. gm21模型python_python使用GM11
  8. C# 应用Excel条件格式(一)
  9. ajax:dataType
  10. tensorflow如何微调时如何只训练后两层_XLNet只存在于论文?都替你封装好了还不来用!...
  11. Javascript 编程风格
  12. Mac安装jdk17和jdk18
  13. 递归算法php,php递归算法经典实例
  14. 来吧,我和你聊聊操作系统
  15. numpy与scipy安装
  16. 没听过33大原则,赶紧偷偷学习一下:JS开发者不得不知的33大原则!
  17. 测试用例设计方法——正交实验法
  18. 微信公众号菜单模板设置
  19. 使用OpenOffic在线转换文档错误
  20. 建立一个低成本的工业控制器和树莓Pi 3

热门文章

  1. 给公司部门设计的SOA架构
  2. 用sfc命令修复Windows7的系统文件
  3. Oracle Database Administrator验证模式
  4. 第一次CODING附parentElement.insertBefore使用详解
  5. 我是一个来自泰兴的程序员,我喜欢C++
  6. 09-03-06 FreeEIM 姗姗来迟
  7. 飞鸽传书不能传送文件
  8. 刻奇·缩减·博客——当今中国博客文化之批判
  9. 一入web前端深似海
  10. 性能优化篇(2):不能忽视的DOM元素