Resolved [org.springframework.web.HttpRequestMethodNotSupportedException: Request method 'POST' not supported 405] 问题如何处理?
问题起源
这个问题是在做shiro和spring整合时候发现的,在此做个记录
git地址:shiro简单整合spring
代码结构

问题发现



问题解决
分析
debug 去DispatcherServlet 这个类中找到doDispatch()方法,断点到此步;

会发现请求进来的时候
HandlerAdapter 是:RequestMappingHandlerAdapter,那么会调用他的handleInternal()方法





这里可以看到ResourceHttpRequestHandler 此类是静态资源处理类,禁止以post请求访问静态资源


解决方法
1)重定向
2)使用允许的get,head方式访问

最后:
git地址:shiro简单整合spring
本文记录了在Shiro与Spring整合过程中遇到的POST请求405错误解决过程。通过debug分析,发现该问题是由于RequestMappingHandlerAdapter限制了POST请求访问静态资源。提供了两种解决方案:重定向和使用GET或HEAD方法访问。
974

被折叠的 条评论
为什么被折叠?



