`
deng131
  • 浏览: 673905 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Ajax中缓存解决办法

阅读更多
由于AJAX的缓存是由浏览器维持,对发向服务器的url,ajax仅在第一次请求时与服务器交互信息,而之后的请求中,ajax认为是同一地址便不再向服务器提交请求,而是直接从缓存中提取数据。那么用什么方法处理缓存问题呐?

常用方法如下:
1、在服务端加 header("Cache-Control: no-cache, must-revalidate");(如php中)
2、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("If-Modified-Since","0");
3、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("Cache-Control","no-cache");
4、在 Ajax URL 参数后加上 "?fresh=" + Math.random()
5、在 URL 参数后加上 "?timestamp=" + new Date().getTime().valueOf();
6、用POST替代GET:不推荐方法,违法了操作本意


最常用的方法是每次给url地址上加上时间戳,这样不会存在一次请求便不在向服务器请求。但是这也需要看具体的业务需求,因为缓存可以减少http请求,对于访问量大网站减少了服务器压力。对常用静态数据不需要每次去服务器获取,第一次取回后便缓存在客户端,如常用城市名称等数据。
分享到:
评论
2 楼 mbn 2010-09-30  
4和5其实是一样的, 也是前端开发者比较常用的方式。jQuery的ajax()中有配置参数cache:false; 其源码也是同样的道理。
1 楼 robin_hood 2010-09-30  
第5种常用

相关推荐

    防止页面url缓存中ajax中post请求的处理方法

    防止页面url缓存中ajax中post请求的处理方法 在Web开发中,Ajax技术是非常常用的一个技术,它可以实现异步请求,提高用户体验。但是,在使用Ajax时,特别是在使用POST请求时,经常会遇到页面缓存的问题,这个问题会...

    IE8下Ajax缓存问题及解决办法

    AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。接下来通过本文给大家介绍IE8下Ajax缓存问题及解决办法,一起看下吧

    ajax跨域问题的解决办法.rar

    在网站开发过程中,Ajax(Asynchronous JavaScript and XML)技术被广泛用于实现页面的异步更新,提高用户体验。然而,由于浏览器的同源策略限制,Ajax请求通常只能在同一个协议、域名和端口下进行,这被称为“跨域...

    jquery .ajax 局部刷新之后 js无法调用问题解决

    解决办法是在`.ajax`的success回调中重新绑定事件: ```javascript $.ajax({ url: 'your-url', type: 'GET', success: function(data) { // 更新DOM $('#target').html(data); // 重新绑定事件 $('#new...

    jQuery中ajax的使用与缓存问题的解决方法

    解决办法可以是客户端或者服务器端统一采用一种字符编码。如果客户端是gb2312编码,可以在服务器端指定输出流的编码为gb2312。如果客户端和服务器端都采用utf-8编码,设置如下: ```php // PHP设置输出流编码为UTF-...

    Ztree操作 AJAX

    ### 可能遇到的问题及解决办法 1. **AJAX请求失败**:检查`url`是否正确,服务器是否运行正常。可以使用浏览器开发者工具查看请求的具体信息。 2. **数据格式问题**:确保服务器返回的数据格式正确无误,符合预期。...

    ExtJs Ajax 同步问题

    在描述中提到的博客链接可能详细解释了遇到的特定问题和解决办法,但由于无法直接访问,我们可以从一般性的角度分析可能的问题和解决方案: 1. **配置错误**:确保`async`参数设置正确。如果希望请求同步,设置`...

    ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题

    总结一下解决办法: 在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱,[即get方式时,获取数据,因发送参数和地址都一致,故IE浏览器会从缓存中取,而不会去请求服务器端,而post方式...

    详谈ajax返回数据成功 却进入error的方法

    接下来,我们将详细介绍AJAX、跨域问题以及相关的解决办法。 AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个页面的情况下,能够更新部分网页的技术。它通过JavaScript和XMLHttpRequest对象,...

    IE下jquery ajax无法获得最新数据的问题解决(IE缓存)

    解决办法: 那就有思路了,我们可以让它每次请求的URL不一样,可以加一个参数,而且这个参数的值每次都不一样,时间戳最好不过了。 代码如下: url: ‘{0}/portal/articleManager/getContents?id={1

    Ajax和jQuery学习笔记

    **1.4 缓存问题与解决办法** - **缓存问题**:使用IE浏览器并通过GET方式提交数据时,浏览器可能会缓存请求,导致重复请求时显示旧数据。 - **解决办法**: - 使用POST方式提交数据。 - 在请求地址后面加上一个...

    在ajax应用当中的编码问题

    AJAX还涉及其他方面的知识,比如常见属性请求的解决办法。这包括跨域资源共享(CORS)问题、XMLHttpRequest的事件监听和状态处理,以及如何使用AJAX来与服务器进行数据交换,而不破坏现有的页面结构。开发者还需要了解...

    在Ajax中使用get和post所遇到的问题及解决办法

    本文将详细介绍在Ajax中使用GET和POST时可能遇到的问题及其解决办法,并简要阐述GET与POST的区别。 首先,我们来看GET请求常见问题及解决方案: 1. **缓存问题**: 当使用GET请求同一个URL时,浏览器可能会从本地...

    ajax json websevice3

    4. **跨域请求**:Ajax的同源策略限制及其解决办法,如JSONP和CORS。 5. **错误处理**:如何在Ajax请求中捕获和处理错误,确保应用程序的健壮性。 6. **AJAX库和框架**:如jQuery的$.ajax()函数,或现代前端库如...

    ajax实战

    - 分析了项目的架构设计、实现过程及遇到的问题解决办法。 #### 三、总结 《Ajax in Action》是一本全面介绍Ajax技术及其应用的书籍。从基础概念到实战案例,本书覆盖了开发者所需的所有关键知识点。无论是对于...

    寻求IE假死具体解决办法

    ### 寻求IE假死具体解决办法 在探讨如何解决Internet Explorer(以下简称IE)出现的“假死”问题之前,我们首先需要明确几个概念:何为IE假死?为何会出现这种情况?以及面对这类问题时我们可以采取哪些具体的解决...

    DWR框架实例及常见问题解决办法,免费放送

    在DWR实例中,你可能会遇到以下常见问题及其解决办法: 1. **跨域问题**:DWR默认支持跨域,但如果遇到问题,可以检查配置文件`dwr.xml`中的跨域设置,或者使用CORS策略。 2. **缓存问题**:如果页面上的数据没有...

    Angularjs在360兼容模式下取数据缓存问题的解决办法

    问题的解决办法主要涉及到对Angularjs中的HTTP请求进行配置,以确保浏览器不会缓存异步请求返回的数据。这里的关键是理解HTTP协议中关于缓存控制的一些头部信息,并如何在Angularjs框架中设置这些头部信息来禁用缓存...

Global site tag (gtag.js) - Google Analytics