Java 无效的摆动请求路径
我正在使用springdoc并试图在我的项目中配置swagger。我有一个身份验证端点,希望在swagger ui页面上执行请求。 Swagger正确地显示了端点路径:Java 无效的摆动请求路径,java,spring,swagger,springdoc,Java,Spring,Swagger,Springdoc,我正在使用springdoc并试图在我的项目中配置swagger。我有一个身份验证端点,希望在swagger ui页面上执行请求。 Swagger正确地显示了端点路径:/api/v1/auth,但当我试图在“Try it out”菜单中执行请求时,它会将请求发送到http://localhost:8080/v3/api-docs/localhost/api/v1/auth 以下是一个例子: 以下是我在swagger中生成的curl连接字符串: curl -X 'POST' \ 'http
/api/v1/auth
,但当我试图在“Try it out”菜单中执行请求时,它会将请求发送到http://localhost:8080/v3/api-docs/localhost/api/v1/auth
以下是一个例子:
以下是我在swagger中生成的curl连接字符串:
curl -X 'POST' \
'http://localhost:8080/v3/api-docs/localhost/api/v1/auth' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"username": "string",
"password": "string"
}'
和配置bean:
@Configuration
public class SwaggerConfiguration {
@Bean
public GroupedOpenApi publicUserApi() {
return GroupedOpenApi.builder()
.group("Api")
.pathsToMatch("/api/**")
.build();
}
@Bean
public OpenAPI customOpenApi() {
return new OpenAPI()
.info(new Info().title("Application API"))
.servers(List.of(new Server().url("localhost").description("Server")));
}
}
提前感谢您的帮助此问题是由于您将服务器URL设置为
localhost
而不是http://localhost
当您在没有协议的情况下指定路径时,它总是作为页面当前URL的相对路径,在本例中为http://localhost:8080/v3/api-文档
用协议更新OpenAPI Bean以反映URL应该可以解决这个问题
@Bean
公共OpenAPI自定义OpenAPI(){
返回新的OpenAPI()
.info(新信息()标题(“应用程序API”))
.servers(新服务器的列表().url()http://localhost:8080)。说明(“服务器”);
}
为了清晰起见,我已将端口号明确指定为
8080
。你能分享一个显示在大摇大摆用户界面中的服务器URL的屏幕截图吗?@Debargha Roy,当然,谢谢,这是个好办法