业务:post数据到 /aaa/bbb/cc,然后被shiro拦截,输出getPathWithinApplication(servletRequest) == "/error"
getPathWithinApplication(servletRequest) //当前请求访问的路径
但是项目中所有的路径中并无此路径。
跟前端同事讨论了一下,最后发现,在controller中配置中:
@RequestMapping(value = "/cc ", method = RequestMethod.POST...),路径cc多加了一个空格...
解决方法:把空格去掉,重新部署自测,正常。
可能原因:此代码为17年提交的,即之前路径是正常匹配的。跟其它同事聊了下,大致可能是因为近期升级了spring-boot,导致的路径校验会区分开空格。所以访问路径无效。具体原因,不打算深究。