页面JS缓存问题解决方案

1.在jsp中加入头

 <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
 <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
 <META HTTP-EQUIV="Expires" CONTENT="0">

或者加入

   <meta http-equiv="pragma" content="no-cache"  />
   <meta http-equiv="content-type" content="no-cache, must-revalidate" />
   <meta http-equiv="expires" content="Wed, 26 Feb 1997 08:21:57 GMT"/>

清除临时缓存

<body onLoad="javascript:document.yourFormName.reset()">

2.在action,使用如下声明

  response.setHeader("Pragma","No-cache");
  response.setHeader("Cache-Control","no-cache");
  response.setDateHeader("Expires", 0);

3.随机参数document.write("<script src=‘test.js?rnd="+Math.random()+"‘></s"+"cript>")。

4.jquery ajax清除浏览器缓存的两种方法:

1.通过$.ajaxSetup 设置属性cache:false,让ajax不调用浏览的缓存.
     jQuery.ajaxSetup ({cache:false}) 

2.可以在ajax的url后加上随机串来避免浏览缓存,如$.ajax({url:‘test.php?‘+parseInt(Math.random()*100000)})缓存

5.有时候以上的方法清除缓存只清除一次,第二次就没有效果了。

所以,本人认为最佳的方法是,在调试的过程中,禁掉IE缓存,这样调试就OK了。但是,用户并不会禁掉呀,这不是出问题了吗?

用户会不会我们不去管,如果写好了js代码的话,我们在js文件后面加入一个版本号就好了。比如:

<script type="text/javascript" src="<%=baseURL%>/xhd_js/select-ajax.js?1.0"></script>

但是,如果开发者重新修改了js文件用户怎么办?

修改之后确定使用之后,再加上

<script type="text/javascript" src="<%=baseURL%>/xhd_js/select-ajax.js?2.0"></script>

则可以解决问题。
时间: 2024-10-27 17:08:11

页面JS缓存问题解决方案的相关文章

jquery load加载页面内ajax返回的div不能响应页面js的问题的解决方案

1. 前言 由于项目需要,需要load一个页面并保持ajax返回的div能响应其页面内的JS的click事件.这个不是 解决用jquery load加载页面到div时,不执行页面js的问题 这类问题,因为并无这个问题存在(jquery版本:1.10.2.js). 2. 本质原因 假定页面内有$(.btn1).click(function(){})事件,你手动复制一个包含class为btn1的div到页面,然后会发现你点击那个div,并不会被响应,如果你在console执行$(.btn1)确实有包

浏览器缓存的解决方案

——IT唐伯虎 摘要:浏览器缓存的解决方案,包括传统前端和现代前端. 前言:本文只针对文件请求(html.css.js)进行分析,但不涉及json数据请求. 浏览器的状态 (1)当浏览器向服务器发起请求,如果请求正常,状态是200. (2)浏览器接收到请求结果后,如果会根据响应头设置的缓存规则,把请求结果存起来. (3)当浏览器再次发起相同的请求的时候,浏览器会先向服务器比对文件,只对比最后修改时间,如果最后修改时间变化就重新获取请求结果,此时状态是200:如果最后修改时间没有变化则从缓存读,此

ehcache 页面整体缓存和局部缓存

页面缓存是否有必要?. 这样说吧,几乎所有的网站的首页都是访问率最高的,而首页上的数据来源又是非常广泛的,大多数来自不同的对象,而且有可能来自不同的db ,所以给首页做缓存是很必要的.那么主页的缓存策略应该怎样设计呢?我认为应该是某个固定时间之内不变的,比如说2分钟更新一次.那么这个缓存应该做在什么地方呢?让我们来看一下,当前我们的的应用的结构一般是是page-filter-action-service-dao-db ,这个过程中的- 的地方都是可以做缓存的地方,根据页面缓存的特征,应该把页面缓

如何禁止js缓存?

起因:最近在学习做网页,需要不停地调试js ,然后呢就遇到一个问题:修改了外部引入的js文件,但是刷新页面却看不到效果,原因是因为浏览器缓存了js文件,浏览器优先读取的是缓存的js 文件,而不是从每次都从服务端获取 解决办法:禁止js缓存 <html> <head> <script type="text/javascript"> document.write("<script src='**.js?"+Math.random

asp.net页面清除缓存2(转)

ASP.NET 提供三种主要形式的缓存:页面级输出缓存.用户控件级输出缓存(或称为片段缓存)和缓存 API. 输出缓存和片段缓存的优点是非常易于实现,在大多数情况下,使用这两种缓存就足够了.而缓存 API 则提供了额外的灵活性(实际上是相当大的灵活性),可用于在应用程序的每一层利用缓存. Steve 的缓存提示 尽早缓存:经常缓存 您应该在应用程序的每一层都实现缓存.向数据层.业务逻辑层.UI 或输出层添加缓存支持.内存现在非常便宜 — 因此,通过以智能的方式在整个应用程序中实现缓存,可以获得很

三、vue如何配置路由 、获取路由的参数、部分刷新页面、缓存页面

1.路由配置:所有的启动文件都在最初始的main.js文件里面,这个文件中首先需要引入: 2.路由文件配置说明: 3.如何获取页面url的参数? this.$route.query 4.页面之间之间的跳转? 5.返回历史记录页面 6.在项目中遇到的问题: 如何做到页面的部分刷新,如果做到部分页面进入的时候需要刷新,部分页面需要缓存? 首选需要了解keep-alive,在路由配置中增加如下代码: { "path": "/test", "component&q

ASP.Net 更新页面输出缓存的几种方法

ASP.Net 自带的缓存机制对于提高页面性能有至关重要的作用,另一方面,缓存的使用也会造成信息更新的延迟.如何快速更新缓存数据,有时成了困扰程序员的难题.根据我的使用经验,总结了下面几种方法,概括了常见的几种情况,如有更好的方法欢迎补充. (1)代码级缓存(对象缓存) Cache 对象 Cache 对象提供代码级的缓存,功能强大,可操作性强.更新这种缓存的方法很简单,只要调用 Cache.Remove(key) 方法就可以清除指定的缓存.代码如下: HttpRuntime.Cache.Remo

h5页面的缓存问题

最近遇到一个灵异事件 h5页面更新了js,在APP内部分登录用户可看新js渲染页面,另外登录用户看到是老js渲染的页面 js上线前会build带上hash,hash方式采用 aaa-1s12jashdjas.js 方式 用户手动清除APP缓存,重新登录后,进入页面的渲染方式正常 1.开始排查流程,前端修改了不规范的代码格式,再次上线仍可复现 2.疑似nginx有缓存html文件,找运维排查,nginx没有缓存该html页面 3.又排查nginx配置问题,再次上线部署,仍可复现 4.疑似CDN的问

前端-强制页面不缓存

有两种方式强制页面不缓存: 1.手动添加版本号 <link rel="stylesheet" type="text/css" href="/css/user.css?v=201806251715" /> <script src="/js/userinfo.js?v=201906223715"></script> 2.添加meta标签 <meta http-equiv="Cac