【业务功能篇95】web中的重定向与转发

web接口的返回值:

转发: return "/reg" 跳转到reg的html页面

重定向 return "redirect:/login.html" 重定向重新发起请求路径是 login.html 比如我们写的接口 @requestmap("/login.html")的的这个请求地址,重新请求

  • 目的:

转发:转发是在服务器端进行的页面跳转。它的主要目的是将请求传递给另一个资源(通常是另一个Servlet或JSP),以便在同一个请求过程中生成响应。

重定向:重定向是在客户端浏览器中进行的页面跳转。它的主要目的是告诉浏览器将请求发送到新的URL地址。

  • 位置:

转发:转发是服务器内部的操作,浏览器不知道它发生了转发,URL地址保持不变。

重定向:重定向是由服务器发送给浏览器的响应,浏览器会根据新的URL地址发起新的请求。

  • HTTP状态码:

转发:转发不会改变HTTP状态码。原始请求的HTTP状态码仍然保持不变。

重定向:重定向通常会返回HTTP状态码,例如 302 Found 或 301 Moved Permanently,以指示浏览器执行跳转。

  • 数据传递:

转发:转发可以在同一个请求中传递数据。原始请求和转发目标可以共享请求参数和属性。

重定向:重定向不会共享数据。任何数据都需要通过URL参数或会话来传递。

  • 性能:

转发:转发通常比重定向更快,因为它在服务器内部完成,不需要额外的网络请求。

重定向:重定向可能会导致额外的网络往返,因此性能较差。

  • 用途:

转发:适用于在同一个应用程序内部的不同组件之间进行页面导航,保持URL不变,共享数据。 重定向:适用于跨域页面跳转,或在不同的Web应用程序之间导航,或者在处理表单提交后避免用户刷新时的表单重复提交。

相关推荐
IT_陈寒1 分钟前
React 19 实战:5个新特性让你的开发效率提升50%!
前端·人工智能·后端
GuMoYu2 分钟前
el-date-picker限制选择范围
前端·javascript·vue.js
冴羽23 分钟前
JavaScript Date 语法要过时了!以后用这个替代!
前端·javascript·node.js
加油乐24 分钟前
react使用Ant Design
前端·react.js·ant design
OEC小胖胖25 分钟前
05|从 `SuspenseException` 到 `retryTimedOutBoundary`:Suspense 的 Ping 与 Retry 机制
前端·前端框架·react·开源库
攀登的牵牛花36 分钟前
前端向架构突围系列 - 框架设计(三):用开闭原则拯救你的组件库
前端·架构
前端小L42 分钟前
专题一:搭建测试驱动环境 (TypeScript + Vitest)
前端·javascript·typescript·源码·vue3
San30.43 分钟前
告别全局污染:深入解析现代前端的模块化 CSS 演进之路
前端·css·vue.js·react.js
程序员鱼皮1 小时前
干掉 Claude Code,这个开源 AI 编程工具杀疯了?
前端·后端·计算机·ai·程序员