# birdwebserverdem_2 **Repository Path**: dream1136/birdwebserverdem_2 ## Basic Information - **Project Name**: birdwebserverdem_2 - **Description**: 自己演练使用,多多交流 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-09-18 - **Last Updated**: 2022-10-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 实现重定向 当浏览器提交一个请求时,比如注册,那么请求会带着表单信息请求注册功能。而注册功能处理 完毕后直接设置一个页面给浏览器,这个过程是内部跳转。 即:浏览器上的地址栏中地址显示的是提交表单的请求,而实际看到的是注册结果的提示页面。 这有一个问题,如果此时浏览器刷新,会重复上一次的请求,即:再次提交表单请求注册业务。 为了解决这个问题,我们可以使用重定向。 重定向是当我们处理完请求后,不直接响应一个页面,而是给浏览器回复一个路径,让其再次根据 该路径发起请求。这样一来,无论用户如何刷新,请求的都是该路径。避免表单的重复提交。 实现: 在HttpServletResponse中定义一个方法:sendRedirect() 该方法中设置状态代码为302,并在响应头中包含Location指定需要浏览器重新发起请求的路径 将原来Controller中内部跳转页面的操作全部改为重定向。