使用 keycloak 其余控制器方法成功进行身份验证后,不会调用而是提供 /static/index.html 文件

问题描述 投票:0回答:1

使用keycloak和spring boot,认证成功后,GET请求被转发到/static/index.html文件,而不是下面的RestController方法。下面方法中的 System.out.println 也没有被执行。 从 jdk1.8 迁移到 jdk 21 以及将 spring boot 升级到 3.1.4 后发生此问题 如何解决这个问题。

@RestController
@RequestMapping(("/api/user"))
@Slf4j
public class UserController {

   @Autowired
   private UserService userService;

   @GetMapping("me")
   public ResponseEntity<?> me(Principal principal) {
        System.out.println("***************************************************************");
       if (principal == null) {
           return ControllerUtil.getUnauthorizedResponse();
       }
       return userService.getUserDetails(new IAppsUser(principal));
   }
}

我期望它应该在方法 me 中打印 println 语句(主体主体) 并正确执行代码

spring-boot rest keycloak spring-rest static-html
1个回答
0
投票

升级到最新的jdk 21和spring boot 3.1.4后,我发现它不再像以前那样扫描基础包。所以我在主类中添加了这个包,问题就解决了

© www.soinside.com 2019 - 2024. All rights reserved.