前端使用POST方式传输,后端使用请求转发报错,修改为重定向解决问题

标题已经说明解决方案:将forward修改为redirect可以解决问题。
本文使用的技术栈:SSM+前端模板引擎thymeleaf
问题分析:
前端请求代码

<form th:action="@{/employee}" method="post">
...
</form>

前端报错信息
在这里插入图片描述
后端处理后跳转代码(使用forward报错)

@PostMapping("/employee")
    public String addEmployee(Employee employee){
        employeeService.addEmployee(employee);
        return "forward:/employee/page/1";
    }

此处因为使用forward请求转发方式会报错
日志给出报错信息

 DEBUG org.springframework.web.servlet.DispatcherServlet - "FORWARD" dispatch for POST "/ssm_war_exploded/employee/page/1", parameters={masked}
WARN org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver - Resolved [org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported]
 DEBUG org.springframework.web.servlet.DispatcherServlet - Exiting from "FORWARD" dispatch, status 405
 DEBUG org.springframework.web.servlet.DispatcherServlet - Completed 405 METHOD_NOT_ALLOWED

此处前端控制器DispatcherServlet给出错误提示:FORWARD方式不被允许,将跳转方式修改为重定向redirect可以解决问题。
------个人异常错误记录------。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值