gpt4 book ai didi

java - Spring Boot启动后如何获取所有端点列表

转载 作者:IT老高 更新时间:2023-10-28 20:53:34 29 4
gpt4 key购买 nike

我有一个用 Spring Boot 编写的休息服务。我想在启动后获取所有端点。我怎样才能做到这一点?为此,我想在启动后将所有端点保存到数据库中(如果它们尚不存在)并使用它们进行授权。这些条目将被注入(inject)到角色中,角色将用于创建 token 。

最佳答案

您可以在应用程序上下文的开头获取 RequestMappingHandlerMapping。

@Component
public class EndpointsListener implements ApplicationListener<ContextRefreshedEvent> {

@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
ApplicationContext applicationContext = event.getApplicationContext();
applicationContext.getBean(RequestMappingHandlerMapping.class).getHandlerMethods()
.forEach(/*Write your code here */);
}
}

或者,您也可以使用 Spring boot actuator(即使您不使用 Spring boot,您也可以使用 actutator)公开另一个端点(映射端点),该端点列出了 json 中的所有端点。您可以点击此端点并解析 json 以获取端点列表。

https://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-endpoints.html#production-ready-endpoints

关于java - Spring Boot启动后如何获取所有端点列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43541080/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com