添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
response.sendRedirect("http://zhoupq.com");复制代码

为什么需要重定向?有时可能不想自己处理响应,可以选择让其他服务处理响应,故将请求重定向到一个完全不同的URL。

重定向的工作原理?


重定向时序图

简而言之,重定向就是servlet将新的URL返回给Location,浏览器获得Location值,访问新的URL。从时序图中可以看出,服务器只负责将新的URL注入Location,URL的转变是由浏览器完成的。

转发也被称作请求分派,转发的关键语句:

RequestDispatcher view = request.getRequestDispatcher("http://zhoupq.com");
view.forward(request,reponse);复制代码

与重定向不同的是,转发的动作是在服务端完成,也就是说server直接将新的URL中的资源返回给浏览器,浏览器地址栏不变,用户察觉不到URL的转变。

现在可以轻而易举地回答开篇的问题:重定向时,地址栏会发生变化,因为URL的重定向由浏览器完成。

  • 私信