SpringSecurity request過濾問題示例小結(jié)
在進行請求時發(fā)現(xiàn)問題,security配置中添加了可免授權(quán)訪問資源請求api,但是還是無法訪問
@RestController("user") public class UserController { @Autowired UserService userService; @PostMapping("/register") public ResultVO userRegister(@RequestBody @Valid UserFirstRegisterVO userFirstRegisterVO) { return userService.userRegister(userFirstRegisterVO); } @PostMapping("/collect") public ResultVO userInfoCollect(@RequestBody @Valid UserSecondRegisterVO userSecondRegisterVO) { return userInfoCollect(userSecondRegisterVO); } }
這里寫的就有問題,好久沒搞,bean命名還以為是路徑映射了,請求的就是/user/register,然后在security中把這個請求路徑給免授權(quán)了,結(jié)果訪問的時候就被未授權(quán)處理器拋出了未授權(quán)的信息,看的我一頭霧水.
/** * @author Vermouth * @ClassName: 未認證, 未授權(quán)訪問處理器 * @Description: 當用戶未通過認證訪問受保護的資源時處理 * @date: 2023-12-11 16:47 * @version: V1.0 */ @Component public class EntryPointUnauthorizedHandler implements AuthenticationEntryPoint { @Override public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) throws IOException, ServletException { ResponseUtils.result(response, new ResultVO(ResultStatus.RESULT_UNAUTHENTICATED_ACCESS.getRspMsg(), ResultStatus.RESULT_UNAUTHENTICATED_ACCESS.getRspCode(), null)); } }
然后跟著一步步調(diào)試,發(fā)現(xiàn)在DispatcherServlet 處理請求時并沒找到handler,同時modeAndView也為null然后進入報錯,被SecurityContext中的處理器給捕獲然后從這拋出了異常。
更正后代碼:
@RestController @RequestMapping("/user") public class UserController { @Autowired UserService userService; @PostMapping("/register") public ResultVO userRegister(@RequestBody @Valid UserFirstRegisterVO userFirstRegisterVO) { return userService.userRegister(userFirstRegisterVO); } @PostMapping("/collect") public ResultVO userInfoCollect(@RequestBody @Valid UserSecondRegisterVO userSecondRegisterVO) { return userInfoCollect(userSecondRegisterVO); } }
使用RequestMapping來添加映射,不知道有沒有更加好用的方式。
到此這篇關于SpringSecurity request過濾問題示例小結(jié)的文章就介紹到這了,更多相關SpringSecurity request過濾內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Springboot使用redis進行api防刷限流過程詳解
這篇文章主要介紹了Springboot使用redis進行api防刷限流過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-12-12idea中javaweb的jsp頁面圖片加載不出來問題及解決
這篇文章主要介紹了idea中javaweb的jsp頁面圖片加載不出來問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07ByteArrayInputStream簡介和使用_動力節(jié)點Java學院整理
ByteArrayInputStream 是字節(jié)數(shù)組輸入流。它繼承于InputStream。這篇文章主要介紹了ByteArrayInputStream簡介和使用_動力節(jié)點Java學院整理,需要的朋友可以參考下2017-05-05