转发:浏览器地址栏不会改变
重定向:浏览器地址栏会发生改变
举个栗子:
角色扮演
浏览器(张三),服务端1(李四),服务端2(王五)
转发:
张三找李四借钱,李四没有那么多钱,李四去王五那里凑了一点,李四将钱拿个张三,
张三只知道自己借了李四的钱,并不知道有王五的参与。
重定向:
张三找李四借钱500,李四没有那么多钱,于是李四给了将王五的联系方式告诉了张三,让他去找王五借,于是张三去找王五借钱。
总结:
转发和重定向的区别:
1、转发是服务端的行为,是服务器受到请求后为了完成响应转到一个新的地址。重定向是客户端的行为,浏览器发送请求并受到响应以后再次向一个新地址发请求。
2、转发,地址栏的URL始终不会发生改变,而重定向会发生改变。
3、重定向中有两次请求对象,不共享数据;转发只产生一次请求对象且在组件间共享数据。