请求转发和重定向区别

请求转发和重定向区别

地址栏

请求转发:地址栏不变

重定向:地址栏改变 (发送了第二次请求)

是否保留数据

请求转发:保留 (请求传送过来的数据会转发到新的jsp中)

重定向:不保留 (请求传送过来的数据不会转发到新的jsp中)

请求的次数

请求转发:1次

重定向:2次

跳转的位置

请求转发:服务器内部发送跳转

重定向:客户端发出第二次跳转

能跳转的资源

请求转发:跳转到项目内的文件(能跳到WEB-INF里面)

重定向:跳转到任何能访问的资源(不能跳动项目里的WEB-INF文件夹里面的文件,原因:浏览器发起的请求,权限不够)

图解:

请求转发:地址栏没改变,转发发生在服务器内部,所以只能跳到项目内存在的文件,并且携带数据。

在这里插入图片描述

重定向:其实是叫浏览器去找新的jsp文件,不带原数据,地址栏改变。其实是叫浏览器发起新的请求,能跳到任意能访问的资源(因为是浏览器发起新的请求,所以能跳到百度等网页),但跳转不到WEB-INF里面,因为浏览器无权直接访问WEB-INF里面的项目。

在这里插入图片描述

posted @ 2022-05-10 18:26  鸭梨的药丸哥  阅读(35)  评论(0)    收藏  举报  来源