浅析XMLHttpRequest的缓存问题

  这篇文章主要是对XMLHttpRequest的缓存问题进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助

  在使用XMLHttpRequest中有没有遇到过,第一次使用是好的,刷新一下就不行了,清空一下缓存再刷新又好了。

  这是在使用XMLHttpRequest中常遇到的一个问题,在有的时候XMLHttpRequest请求的结果会缓存在同一个URL中,如果你请求之后的响应不同,就会产生一些莫名其妙的问题,当然也包括文章一开始那个呵呵。

  解决方法:

  知道了原理就简单了,也就是每次请求的URL不同,让它每次都去服务器端请求,而不是使用缓存。下面有两种自己常用的方法:

  第一种方法是加时间戳

  var url = BaseURL + "&timeStamp=" + new Date().getTime();

  第二种方法加个随机数

  var url = BaseURL + "&r=" + Math.random();

  可能还有很多其它的方法,只要你能保证让它每次都去服务端去请求就OK了。

 

时间: 2024-11-29 22:48:38

浅析XMLHttpRequest的缓存问题的相关文章

浅析XMLHttpRequest的缓存问题_javascript技巧

在使用XMLHttpRequest中有没有遇到过,第一次使用是好的,刷新一下就不行了,清空一下缓存再刷新又好了. 这是在使用XMLHttpRequest中常遇到的一个问题,在有的时候XMLHttpRequest请求的结果会缓存在同一个URL中,如果你请求之后的响应不同,就会产生一些莫名其妙的问题,当然也包括文章一开始那个呵呵. 解决方法:知道了原理就简单了,也就是每次请求的URL不同,让它每次都去服务器端请求,而不是使用缓存.下面有两种自己常用的方法: 第一种方法是加时间戳var url = B

浅析showModalDialog数据缓存问题(用禁止浏览器缓存解决)

在使用showModalDialog弹出窗口时,显示的数据是上次修改前的数据,这是因为默认情况下页面保存了缓存,所以显示的数据并不是修改后的情况   如果要显示最新的数据需要在页面中进行设置,取消缓存. 在showModalDialog的页面的Head标签内增加如下代码:<meta http-equiv="pragma" content="no-cache">这样页面就不会被缓存.从而保证了在对数据进行修改后,再次打开页面后显示最新的数据. HTML方面

浅析showModalDialog数据缓存问题(用禁止浏览器缓存解决)_javascript技巧

如果要显示最新的数据需要在页面中进行设置,取消缓存. 在showModalDialog的页面的Head标签内增加如下代码:<meta http-equiv="pragma" content="no-cache">这样页面就不会被缓存.从而保证了在对数据进行修改后,再次打开页面后显示最新的数据. HTML方面<meta http-equiv="pragram" content="no-cache"> 禁止

解决ajax只触发一次不更新缓存的解决方法

ajax|解决|缓存 今天在做JSP与后台连接,用的是DOJO的默认AJAX提交代码,开始是读出了数据,后来我改后数据库里的数据,再次 出发刚才的数据时,发现前台调用了方法,后来却无动于衷.在查了些资料后找到了解决方案 因为是XMLHTTPREQUEST的缓存问题如果用GET 方式来向之前提交的地址提交数据时 回读取之前读出的数据 而不会到后台去重新读取数据  解决方法有二 1 就是把method 改成POST 2 如果你一定要用GET的的话  那就在你的提交参数最后面加个随即数,最常用的就是加

浅析ASP.NET FORUMS中缓存机制的应用

asp.net|缓存 浅析ASP.NET FORUMS中缓存机制的应用 在ASP.NET中有三种缓存机制,我在这里主要提到的是ASP.NET FORUMS中使用的缓存API Cache对象Cache对象可以说在ASP.NET FORUMS中无所不在,以SiteUrls()类为例在构造函数中有如下代码if (HttpRuntime.Cache[cacheKey] == null) { . .System.Web.Caching.CacheDependency dep = new System.We

浅析Yii2缓存的使用_php实例

一个好的框架是肯定离不开缓存的使用,相反,一个没有缓存的框架也肯定不是一个好框架,好像是一个意思,不管了,我们先来看看yii2中是如何使用缓存的吧. 又是到我们第一步操作的时候了,我们先来配置组件. 方便起见,我们的缓存组件配置在common\config\main.php文件,先来简单配置下文件缓存 'components' => [ 'cache' => [ 'class' => 'yii\caching\FileCache', 'cachePath' => '@runtime

浅析SQL Server中的执行计划缓存(下)_MsSql

在上篇文章给大家介绍了SQL Server中的执行计划缓存(上),本文继续给大家介绍sqlserver执行计划缓存相关知识,小伙伴们一起学习吧. 简介 在上篇文章中我们谈到了查询优化器和执行计划缓存的关系,以及其二者之间的冲突.本篇文章中,我们会主要阐述执行计划缓存常见的问题以及一些解决办法. 将执行缓存考虑在内时的流程 上篇文章中提到了查询优化器解析语句的过程,当将计划缓存考虑在内时,首先需要查看计划缓存中是否已经有语句的缓存,如果没有,才会执行编译过程,如果存在则直接利用编译好的执行计划.因

浅析SQL Server中的执行计划缓存(上)_MsSql

简介 我们平时所写的SQL语句本质只是获取数据的逻辑,而不是获取数据的物理路径.当我们写的SQL语句传到SQL Server的时候,查询分析器会将语句依次进行解析(Parse).绑定(Bind).查询优化(Optimization,有时候也被称为简化).执行(Execution).除去执行步骤外,前三个步骤之后就生成了执行计划,也就是SQL Server按照该计划获取物理数据方式,最后执行步骤按照执行计划执行查询从而获得结果.但查询优化器不是本篇的重点,本篇文章主要讲述查询优化器在生成执行计划之

浅析Hibernate 3二级缓存基础

在向大家详细介绍Hibernate 3之前,首先让大家了解下Hibernate 3二级缓存,以后全面介绍Hibernate 3. 1.Hibernate 3二级缓存和session级别的缓存一样都只对实体对象做缓存,不对属性级别的查询做缓存:二级缓存的生命周期和sessionFactory的生命周期是一样的,sessionFactory可以管理二级缓存: 2.sessionFactory级别的缓存,需要手动配置:所有的session可以共享sessionFactory 级别的缓存:(一般把一些不