我同时学习AJAX和Java Servlet API(以及Spring MVC,它基于,基于),并且相信我理解了大部分基础知识,除非在了解HttpServletResponse
当服务器/ Servlet响应HTTP GET/POST
(与正常页面请求相对应)而不是基于AJAX的XmlHttpRequest
时,结构化/组织/填充的方式不同。AJAX与Java:HttpServletResponse如何受影响?
在我看来,在没有AJAX的情况下,每个HttpServletResponse都只包含页面的完整HTML(加上header/metadat/etc。info)。通过AJAX,异步XmlHttpRequests
可用于更新特定页面内特定的组件。因此,如果我理解HTTP和Servlet正确,为http://www.example.com/some-page.html
请求可能导致包含了以下机身的HttpServletResponse的:
<html>
<header><title>Title of the page</title></header>
<body>
<!-- Some massive amount of HTML -->
<a href="./foo.html">This is a link</a>
<!-- Lots more HTML -->
</body>
</html>
然而,随着AJAX请求,不知何故HttpServletRequest的可能发回的信息,使得链路(从上面的例子)现在呈现到这一点:
<a href="./bar.html">This is a new link that point to bar</a>
我的问题是:怎样的Java Servlet的结构HttpServletRequests同时处理整页的请求以及可能只会产生改变页面的部分AJAX请求?
作为一个类似但又相互独立的问题,客户端(浏览器)知道如何使用HTTP Responses
(由Servlet发回),并渲染整个新页面或只更新页面的一小部分。
在此事先感谢您的任何澄清。
相关:http://stackoverflow.com/questions/4112686/how-to-use-servlets-and-ajax – BalusC