forward(转发) 和 redirect(重定向) 的区别
转发是服务器行为,重定向是客户端行为
1.转发在服务器端完成的;重定向是在客户端完成的
2.转发的速度快,转发的是同一次请求;重定向速度慢,重定向是两次不同请求
3.转发地址栏没有变化;重定向地址栏有变化
forward 是服务器请求资源,服务器直接访问目标地址的 URL,把那个URL 的响应内容读 取过来,然后把这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪 儿来的,所以它的地址栏中还是原来的地址。
redirect 就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来 说浏览器会用刚才请求的所有参数重新请求,所以session,request 参数都可以获取。