我在我的应用程序中使用Spring Boot MVC。如果令牌无效,我需要将用户重定向到invalid-token.html
页。当令牌无效时,将在浏览器中更改URL,但是不会加载invalid-token.html页面。
我已将security
配置为允许/invalid-token
路径,并且在资源目录中也有invalid-token.html
文件。
我还需要为控制器内部的/invalid-token
路径提供控制器映射吗?
@GetMapping("/confirm")
public RedirectView confirmUser(RedirectAttributes attributes, @RequestParam("token") String token){
// Find the user associated with the reset token
Optional<User> optionalUser= userService.findByConfirmationToken(token);
if (!optionalUser.isPresent()) {
//redirect user to reset password page.
attributes.addFlashAttribute("invalidToken", "Invalid Token. Please enter your email address.");
return new RedirectView("redirect:invalid-token");
}
}
答案 0 :(得分:1)
您对RedirectView
的输入参数不正确,应该为RedirectView("/invalid-token.html")
。如果您查看spring doc,它将以String url
作为参数。