【发布时间】:2021-06-09 23:54:49
【问题描述】:
据我了解,当您使用 RequestDispatcher 对象包装 servlet 并使用 forward() 方法时,您将委托该 servlet 来处理请求并产生响应。但是,当您包含一个 html 页面作为 getRequestDispatcher() 的参数时,究竟发生了什么?
这是来自甲骨文:
RequestDispatcher getRequestDispatcher(java.lang.String 路径) 返回一个 RequestDispatcher 对象,该对象充当位于给定路径的资源的包装器。 RequestDispatcher 对象可用于将请求转发到资源或将资源包含在响应中。
那么这个资源包含在http响应的什么地方,接收响应的页面是如何知道导航到这个页面的呢?如果请求是使用 AJAX 发送的,那么该页面中的其余 JS 是否会在重定向到新页面之前执行? (即,如果我正在编写一个脚本来存储会话中响应的数据,这会在客户端导航到另一个页面之前执行吗?)
【问题讨论】:
-
Ctrl+F "Sending a redirect from servlet" in abovelinked duplicate.
标签: javascript java ajax servlets requestdispatcher