【问题标题】:Swagger- Custom model in Request HeaderSwagger-请求标头中的自定义模型
【发布时间】:2020-10-27 06:55:39
【问题描述】:

我的 API 需要请求标头中的两个字段(作为全局参数)。一个输入是授权字段、字符串输入,另一个输入是自定义用户对象(Java POJO 序列化为 JSON)。我使用以下属性来构建全局参数

ParameterBuilder authParameterBuilder = new ParameterBuilder();
    authParameterBuilder.name("Authorization") // name of header
            .modelRef(new ModelRef("string")).parameterType("header") // type - header
            .description("Bearer OAUTH_ACCESSTOKEN").required(true) // for compulsory
            .build();
    System.out.println(User.class.getTypeName());
    ParameterBuilder userParameterBuilder = new ParameterBuilder();
    userParameterBuilder.name("user") // name of header
            .modelRef(new ModelRef("User"))     // User model is not assigned
            .parameterType("header") // type - header
            .description("User object").required(true) // for compulsory
            .build();

我需要将第二个输入的模型引用设置为在 swagger UI 中显示为“用户”模型对象,但它没有显示用户模型。

请告诉我如何将自定义 POJO 配置为请求标头的输入模型

【问题讨论】:

    标签: java spring-boot swagger swagger-2.0


    【解决方案1】:

    尝试以下操作,虽然我不明白您为什么要在 header

    中传递对象
     ParameterBuilder userParameterBuilder = new ParameterBuilder()
                                                            .type(new TypeResolver().resolve(User.class))
                                                            .name("user")
                                                            .modelRef(new ModelRef("User"))
                                                            .parameterType("header") // why not body?
                                                            .description("User object")
                                                            .required(true)
                                                            .build();
    

    【讨论】:

      猜你喜欢
      • 2017-07-09
      • 2017-05-02
      • 2017-09-28
      • 2023-03-21
      • 2016-06-24
      • 2022-12-14
      • 2011-03-04
      • 1970-01-01
      相关资源
      最近更新 更多