swagger - 我如何记录我没有所有权的对象?

我要返回 Page<SomeObject>在我的方法端点。在我的 OpenAPI UI 中,如何生成对来自 org.springframework.data.domain.Page 的字段的描述类型。 通常我所做的是转到我想要记录的对象并用 @Schema(description = "some description") 注释它的字段。 .但我无权访问 Page类(class)。我如何记录它的字段?

我可能在这里遗漏了一些简单的东西,但我们将不胜感激。

PS:我使用的是 OpenAPI v3 和 springdoc

最佳答案

您可以使用 OpenApiCustomiser。

例如,假设您有这个 Controller :

@RestController 公共(public)类 HelloController {

@GetMapping("/hello")
Page<PersonDTO> getPage() {
    return null;
}

假设您要为 Pageable 元素添加描述:

@Bean
public OpenApiCustomiser pageableOpenApiCustomiser() {
    return openApi -> {
        Schema pageableSchema = openApi.getComponents().getSchemas().get("Pageable");
        pageableSchema.setDescription("my description");
    };
}

相同的逻辑适用于您需要自定义的任何其他属性。

https://stackoverflow.com/questions/63229287/

相关文章:

firebase - 如何将复杂的 Firestore 查询卸载到 Firebase Cloud F

amazon-web-services - ECS 服务的两个或多个实例之间的通信

angular - 在 Angular 10 中将 HTML 转换为 PDF

python - 如何使用 Elasticsearch-dsl 在 Django 中进行并行测试?

google-api - Google Calendar API 在单个批处理请求中返回 403 R

delphi - TEdgeBrowser 导航失败,出现错误 "File not found"

reactjs - 如何在 React 中添加对状态码 400 的验证

php - 使用 Laravel 的 Eloquent 将数据发送到数据库的问题

python-3.x - 无论如何,您是否可以检查 Azure CLI 在后台执行哪些 API 调用

python - Django 信号卡在循环中