>  기사  >  백엔드 개발  >  js 设置缓存与获取缓存实例学习

js 设置缓存与获取缓存实例学习

WBOY
WBOY원래의
2016-07-25 09:12:461296검색

例子,js设置与获取缓存。

  1. //设置缓存,获取设置的缓存,键值对形式, name value
  2. localStorage.getItem("key"); //获取键的值
  3. localStorage.setItem("key", 1); //设置键的值
复制代码

解决js缓存地址问题 js实现不缓存

复制代码

不缓存js的方法

  1. <script> <li>document.write("<s"+"cript type='text/javascript' src='/js/test.js?"+Math.random()+"'>"+"ipt>"); <li></script>
复制代码

其他的类似,只需在地址后加上+Math.random() 注意:因为Math.random() 只能在Javascript 下起作用,故只能通过Javascript的调用才可以

若上面改为

  1. (
复制代码

则无法实现不缓存

js文件不缓存

每次连接的地址变化,利用js随机数

  1. document.write(""+"ipt>");
复制代码

禁用页面缓存的几种方法(静态和动态) 1、在Asp页面首部

加入 以下是引用片段:
  1. Response.Buffer = True
  2. Response.ExpiresAbsolute = Now() - 1
  3. Response.Expires = 0
  4. Response.CacheControl = "no-cache"
  5. Response.AddHeader "Pragma", "No-Cache"
复制代码

2、在html代码中加入

复制代码

3、在重新调用原页面的时候在给页面传一个参数 Href="****.asp?random()" 前两个方法据说有时会失效,而第三种则是在跳转时传一个随机的参数! 因为aspx的缓存是与参数相关的,如果参数不同就不会使用缓存,而会重新生成页面,每次都传一个随机的参数就可以避免使用缓存。 这个仅适用于asp&asp.net 。

4、在jsp页面中实现无缓存:

  1. response.setHeader("Cache-Control","no-cache"); //HTTP 1.1
  2. response.setHeader("Pragma","no-cache"); //HTTP 1.0
  3. response.setDateHeader ("Expires", 0); //prevents caching at the proxy server
复制代码

这些代码加在

中间具体如下
  1. response.setHeader("Cache-Control","no-cache"); //HTTP 1.1
  2. response.setHeader("Pragma","no-cache"); //HTTP 1.0
  3. response.setDateHeader ("Expires", 0); //prevents caching at the proxy server
  4. %>
复制代码

5、window.location.replace("WebForm1.aspx"); 参数就是要覆盖的页面,replace的原理就是用当前页面替换掉replace参数指定的页面。 这样可以防止用户点击back键。使用的是javascript脚本,举例如下: a.html

  1. a
  2. b
复制代码

b.html

  1. b
  2. a
复制代码

前4种只是清空了cache,即存储在Temporary Internet Files文件夹中的临时文件,而第五种则是使用跳转页面文件替换当前页面文件,并没有清空cache。 即emporary Internet Files产生了相关的临时文件,两者搭配使用真是清空缓存。



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.