`
yefeng_laixi
  • 浏览: 16285 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ajax 中使用servlet但不执行解决方法

    博客分类:
  • WEB
阅读更多
方法一:
xmlHttp.open("GET", "default.aspx?param="+Math.random(), true);
或者
xmlHttp.open("GET", "default.aspx?param="+new Date().getTime(), true);
方法二:
xmlHttp.open("GET", "default.aspx", true);
xmlHttp.setRequestHeader("If-Modified-Since","0");
xmlHttp.send(null);
建议使用方法二

经过分析问题出在XmlHttpRequest这个对象上面,切换选项后,并不是每次走到请求页面的逻辑中。查询了相关资料解决方案如下:

request.setRequestHeader("If-Modified-Since","0");


简单的说,Last-Modified 与If-Modified-Since 都是用于记录页面最后修改时间的 HTTP 头信息,只是 Last-Modified 是由服务器往客户端发送的 HTTP 头,而 If-Modified-Since 则是由客户端往服务器发送的头,可 以看到,再次请求本地存在的 cache 页面时,客户端会通过 If-Modified-Since 头将先前服务器端发过来的 Last-Modified 最后修改时间戳发送回去,这是为了让服务器端进行验证,通过这个时间戳判断客户端的页面是否是最新的,如果不是最新的,则返回新的内容,如果是最新的,则 返回 304 告诉客户端其本地 cache 的页面是最新的,于是客户端就可以直接从本地加载页面了,这样在网络上传输的数据就会大大减少,同时也减轻了服务器的负担。



另外还有另一个解决放案,经测试,理论也是可行的,就是在请求页面设置一下response的header:

       Response.AddHeader("Cache-control", "no-cache");

从服务端设置Header,其默认值为"private"修改为"no-cache"将实现,每次发送请求都会去服务端走一次
分享到:
评论

相关推荐

    ajax+jsp+servlet 中文解决方法

    在这个"ajax+jsp+servlet 中文解决方法"的示例中,开发者遇到了在使用Ajax进行数据交互时中文乱码的问题。中文乱码通常是由字符编码不一致导致的,特别是在跨平台或跨浏览器通信时。以下是一些关于如何解决这个问题...

    Ajax+servlet实现搜索框智能提示

    在现代Web应用中,用户界面的交互性和实时性变得至关重要,Ajax(Asynchronous JavaScript and XML)技术正是为了解决这些问题而诞生的。Ajax允许我们在不刷新整个页面的情况下,与服务器进行异步数据交换,极大地...

    jsp+ajax+servlet+jdbc案例

    2. **AJAX请求**:当用户点击登录按钮时,使用JavaScript的XMLHttpRequest对象或者更现代的fetch API,发送AJAX请求到对应的Servlet。 3. **Servlet处理**:Servlet接收到请求后,通过JDBC连接数据库,执行查询用户...

    html+Servlet+ajax实现登录修改

    在这个项目中,我们使用HTML作为前端展示层,Servlet作为服务器端处理逻辑,以及AJAX进行异步数据交换,以提供更好的用户体验。 首先,HTML(HyperText Markup Language)是Web页面的基础,负责定义页面结构和内容...

    Servlet+Ajax实现搜索框智能提示

    在这个系统中,用户在输入框中输入关键词时,后台服务器会通过Servlet处理请求,动态地返回与输入相关的搜索建议,而这一切都在不刷新整个页面的情况下完成,这正是Ajax(异步JavaScript和XML)技术的核心应用。...

    _探讨Ajax获取表单值向Servlet传递的设计方案.doc

    本文探讨了 Ajax 获取表单值向 Servlet 传递的设计方案,包括了 XMLHttpRequest 对象的获取、GET 和 POST 方式的异步发送数据、回调函数的使用等内容,为开发者提供了一个实用的解决方案。 知识点: 1. Ajax 技术...

    JSP+SERVLET+AJAX网上书城

    在IT领域,Web开发是不可或缺的一部分,而JSP(JavaServer Pages)、Servlet和Ajax是构建动态、交互式Web应用程序的关键技术。本项目“JSP+Servlet+Ajax网上书城”旨在帮助新手小白通过实践理解这些核心技术,并实现...

    典型的ajax+servlet

    3. **JSON(JavaScript Object Notation)**:虽然名称中有XML,但现代的Ajax更多地使用JSON作为数据交换格式,因为它更轻量且易于解析。JSON格式与JavaScript对象语法几乎相同,使得数据转换为JavaScript对象变得...

    Ajax + Servlet 跨域访问(Jsonp技术)

    **Ajax + Servlet 跨域访问 (Jsonp技术)** 在Web开发中,浏览器的同源策略(Same-...尽管现代Web开发中有了CORS(跨源资源共享)等更安全的跨域解决方案,但Jsonp因其简单性和广泛支持,依然在很多场景下被广泛应用。

    通用AjaxServlet

    在通用AjaxServlet中,这个机制被用来接收前端传来的类名和方法名,然后在服务器端找到对应的类和方法并执行。 具体实现流程如下: 1. 前端JavaScript发送Ajax请求,请求中包含要调用的Java类名、方法名以及可能的...

    Ajax jsp servlet

    2. **数据格式**:虽然名称中含有XML,但Ajax并不局限于XML,也可以使用JSON、HTML或纯文本等数据格式。JSON因其轻量级和易于处理的特性,现在更常被用于Ajax交互。 **JSP(JavaServer Pages)** JSP是一种动态...

    ajax实现,JSP+SERVLET方式

    在Web开发中,AJAX(Asynchronous JavaScript and XML)是一种创建动态网页的技术,它允许页面在不重新加载整个页面的情况下与服务器交换数据并更新部分网页内容。本篇将详细讲解如何利用AJAX与JSP(JavaServer ...

    实例解读Ajax与servlet交互的方法

    - Servlet(`ajaxServlet`)继承自`HttpServlet`,负责处理来自Ajax请求的数据。在示例中,Servlet没有显示完整的实现,但通常它会执行数据库查询或其他业务逻辑,然后生成XML响应。 - 要注意,Servlet需要处理`...

    猜数字游戏-servlet练习

    在初始化阶段,Servlet容器(如Tomcat)加载Servlet类,并调用`init()`方法,只执行一次。在服务阶段,每当接收到一个新的请求时,Servlet容器会创建一个`ServletRequest`和`ServletResponse`对象,并调用Servlet的`...

    关于struts和servlet同时用

    总之,Struts和Servlet是Java Web开发中不可或缺的工具,它们结合使用可以构建出高效、可维护的Web应用程序。通过理解它们各自的角色和相互间的配合,开发者可以更好地利用这些技术解决实际问题。在阅读和学习源码时...

    dwr实现ajax功能ajax+dwr

    4. **在HTML/JavaScript中使用DWR**: 在客户端页面上引入DWR的JavaScript库,并调用生成的接口执行服务器端的方法。 5. **处理回调**: 服务器响应后,DWR会调用预先定义的回调函数,将结果传递给前端进行处理。 在...

    网络流量分析系统(jsp+servlet+ajax)

    - 前端展示:jsp页面中嵌入JavaScript和CSS,结合ajax技术,动态绘制流量图表,如使用ECharts或D3.js库创建折线图、饼图等,展示流量的流入流出和流速变化。 - 用户交互:通过ajax实现无刷新更新,用户可以选择不同...

    jsp+servlet+javabean学生信息管理系统

    2. **数据库设计**:系统需要一个数据库来存储学生信息,包括但不限于姓名、学号、性别、出生日期、专业、成绩等。使用关系型数据库如MySQL,设计合理的数据表结构以优化查询性能。 3. **CRUD操作**:系统应支持...

    Ajax 使用Jquery与服务器的交互。

    public class AjaxServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 获取请求参数 String key1 = ...

    Servlet3.0

    1. **异步Servlet**: 在Servlet 3.0之前,Servlet生命周期中的service()方法是同步执行的,这意味着每次请求都会占用一个线程直到响应完成。而Servlet 3.0引入了异步处理,允许开发者将请求处理逻辑移到一个新的线程...

Global site tag (gtag.js) - Google Analytics