`
esperanza
  • 浏览: 183417 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

页面缓存Cache-Control问题

阅读更多
调用ajax时希望浏览器不缓存,服务器端控制AJAX页面缓存:
    response.setHeader( "Pragma", "no-cache" );
    response.addHeader( "Cache-Control", "must-revalidate" );
    response.addHeader( "Cache-Control", "no-cache" );
    response.addHeader( "Cache-Control", "no-store" );
    response.setDateHeader("Expires", 0);
单纯的使用 xmlhttp.setRequestHeader("Cache-Control","no-cache")无效。
也可以在使用AJAX发送请求的时候附加一个时间戳:
var xmlhttp = createrequest();
xmlhttp.open("GET",appendTimestamp(url),true);
  function appendTimestamp(url)
  {
      if (url.indexOf("?")>0)
      {
          return url+"&ajax_time="+new Date().getTime();
      } else
      {
          return url+"?ajax_time="+new Date().getTime();
      }
  }
当然这个方法也只能解决部分问题,如果URL太长也不行。
分享到:
评论

相关推荐

    http头部cache-control字段解析

    HTTP头部的`Cache-Control`字段是HTTP协议中用于控制缓存行为的重要机制,它为客户端和服务器之间的数据传输提供了更多的灵活性和效率。本文将深入解析`Cache-Control`字段的含义、作用及其各种指令,帮助你更好地...

    Cache-control使用Cache-control:private学习笔记

    `Cache-Control: private`指令意味着响应只能被单个用户代理(通常是浏览器)缓存,不允许共享缓存(如代理服务器)存储该响应。这通常用于包含敏感信息的页面,因为这些页面的数据不应该被其他用户访问。在打开新...

    http cache-control详解

    Response.CacheControl = "no-cache" ' 禁止缓存 ``` 以上代码示例展示了如何使用ASP来调整HTTP响应的缓存控制设置。 综上所述,`Cache-Control`和`Expires`字段是HTTP缓存策略的重要组成部分,它们决定了浏览器...

    cache-header-control:控制响应缓存头

    npm install cache-header-control --save 用法 var express = require ( 'express' ) ; var setCacheHeader = require ( 'cache-header-control' ) ; var app = express ( ) ; app . use ( function ( req , res ...

    Go-Go的缓存控制中间件添加ETag头(内容的md5)和Cache-Control头

    本篇我们将深入探讨如何使用Go来实现一个缓存控制中间件,特别是关于添加`ETag`头(基于内容的MD5哈希)和`Cache-Control`头。 `ETag`(Entity Tag)是HTTP响应头中的一个字段,用于标识资源的特定版本。它通常是...

    cache-control-midd:ExpressConnect 中间件设置响应头缓存选项

    缓存控制中间Express/Connect 中间件设置响应头缓存选项安装 npm install cache-control-midd --save用法 var express = require ( 'express' ) ;var cacheControl = require ( 'cache-control-midd' ) ;var app = ...

    cache-control:可以在上次更新时间方面覆盖的缓存控制

    安装composer require nomenjanahary/cache-control配置storage_cache_control : exclude_status : - " 5xx " - " 4xx " default_cache : maxAge : 3600 public : true # merge, replace override_strategy : merge ...

    nginx-cache-control:没有缓存清除模块的 Nginx 缓存控制插件

    nginx-缓存控制没有缓存清除模块的 Nginx 缓存控制插件部分代码是基于其他 Nginx Cache Plugins 的代码,但这是设计为简单、轻量级的实现== 具体.... == Mark Jaquith 提出了使用强制动态页面加载的标头的基本设计,...

    cache-control-spider:搜寻网站以获取Cache-Control标头

    $ git clone git@github.com:jameslnewell/cache-control-spider.git $ npm i 用法 $ node index.js http://dev.online4.nib.com.au 原料药 方法 新的Crawler() 创建一个新的搜寻器。 .add(网址) 添加要爬网...

    koa-cache-router:koa缓存页面中间件

    对于缓存某些页面(例如/home很有用。安装npm i koa-cache-router --save用法var router = new(require('koa-router'))();var CacheMiddleware = require('koa-cache-router');router.use('/home', CacheMiddleware...

    SERVLET 上传文件原理,Cache-Contro,java编码,jbpm原理

    `Cache-Control: max-age=3600`表示响应可以被缓存一小时。理解并正确设置`Cache-Control`对于优化网站性能和减少网络流量至关重要。 Java编码规范与最佳实践: Java编程语言有一套标准的编码规范,包括命名规则、...

    页面的缓存与不缓存设置及html页面中meta的作用

    1. **Pragma**: 在HTTP1.0中,`Pragma:no-cache`用于指示浏览器不应缓存页面,但这个指令对HTTP1.1不强制,仅作为向后兼容的机制。 2. **Cache-Control**: 这是HTTP1.1引入的字段,提供了更多的控制选项。例如: -...

    jersey-header-cache-control

    与 JAX-RS Web 服务一起使用的注释,以向响应添加标头“Cache-Control”。 该项目应该被视为只是 JAX-RS 环境中注释功能的骨架。 用法 使用资源配置: 在package.name 中包含 CacheFilterFactory.java 并在您的 ...

    后端缓存技术:Cache-Control.zip

    后端技术系列教程,包括: API开发全套教程 后端安全全套教程 后端微服务架构全套教程 后端性能优化全套教程 后端框架全套教程 后端缓存技术全套教程 后端编程语言全套教程 数据库技术全套教程

    强制缓存和协商缓存资源

    private 和 public 是 Cache-Control 字段中的两个常用值,用于指定缓存的范围,例如 Cache-Control: private,表示缓存只允许浏览器缓存,而不允许代理服务器或缓存服务器缓存,例如 Cache-Control: public,表示...

    微信小程序中网络请求缓存的解决方法

    const maxAge = parseInt(cacheControl.split('=')[1], 10) * 1000; const expireTime = Date.now() + maxAge; wxStorageSync.setStorageSync(url, { data: response.data, expireTime }); } } function ...

    Http页面缓存机制

    Cache-Control 规则可以设置缓存的时长,例如 Cache-Control: max-age=3600,可以设置缓存的时长为一小时。 Etag 是一种控制浏览器缓存的规则,它可以控制浏览器缓存的版本。Etag 规则可以设置缓存的版本,例如 ...

    response.setHeader问题

    response.setHeader 问题详解 Response.setHeader 问题是指在 Servlet 中使用 response 对象的 setHeader 方法来设置...通过设置 Cache-Control、Pragma 和 Expires 报头,可以禁用浏览器的缓存,提高页面的响应速度。

    nginx缓存不起作用问题解决方法

    header主要有如下: 代码如下:Cache-control:no-cache、no-store如果出现这两值,nginx缓存服务器是绝对不会缓存的 代码如下:Expires:1980-01-01如果出现日期比当前时间早,也不会缓存。 2. 解决不缓存方案 2.1 ...

Global site tag (gtag.js) - Google Analytics