HiddenHttpMethodFilter要求用Post请求发送Put请求
如果用Get发送Put请求,会直接跳过过滤器,此时hidden的Put请求就没有意义了
jsp不支持put请求
从Tomcat8开始,put请求发送到jsp页面会报405错误,JSPs only permit GET Post or HEAD
springmvc返回jsp页面时默认调用转发
在springmvc中,return jsp页面时,默认调用转发返回jsp页面。
只有在设置return(“redirect:/url”)时,才会调用重定向返回jsp页面。
重定向会重新发一次请求,请求默认为get请求
重定向后会返回jsp的路径给浏览器,再让浏览器通过默认的get请求访问该路径指向的jsp页面。
重新发送的请求不会保留之前请求发送的数据,因为request域的生命周期只有一个请求。
除了重定向还有什么方法?
如果一定要调用转发不用重定向,也可以在jsp页面的page指令中加入isErrorPage="true"
,这样jsp就会允许put请求。
:::danger
但这种方法并不是很多人用,大多数人还是使用重定向
:::