请求转发与重定向
Posted xfdhh
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请求转发与重定向相关的知识,希望对你有一定的参考价值。
1、原理图解
2、重定向代码
response.setStatus(302); //资源重定向
response.setHeader("location","路径"); //设置响应头,跳转到指定页面
或者直接 response.sendRedirect("路径");
浏览器延迟X秒重定向:response.setHeader("refresh","X秒;url=客户端绝对路径");
3、请求转发代码
request.getRequestDispatcher("路径").forward(request,response);
4、WEB-INF是内部资源,不能通过浏览器直接访问
但可以通过请求转发进行访问
5、二者区别
请求转发只有一次请求,重定向是两次请求
请求转发只能访问服务器内部资源,重定向可以定向到外部资源
请求转发的地址栏不发生改变,重定向的地址栏发生改变
请求转发时request作用域依然有效,重定向request作用域失效
6、那么何时使用请求转发?
① 要求安全,不暴露程序路径
② 要求高效
③ 使用request作用域
④ 访问受保护目录资源
何时使用重定向?
① 跳转外网资源
② 改变地址栏路径
以上是关于请求转发与重定向的主要内容,如果未能解决你的问题,请参考以下文章