欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2022-04-14 22:22:02
...

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

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

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

复制代码

不缓存js的方法

复制代码

其他的类似,只需在地址后加上+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产生了相关的临时文件,两者搭配使用真是清空缓存。