【问题标题】:Does Swagger UI support @PathVariable binding?Swagger UI 是否支持@PathVariable 绑定?
【发布时间】:2015-02-23 02:00:20
【问题描述】:

目前,当我针对将“id”路径变量绑定到数据对象的 GET 请求测试 Swagger UI 时,“id”字段的 dataType 是 Model,而不是长。

例如,这里是 RestController 中的方法:

@RequestMapping(value = "/{id}", method = GET)
    public AwardVO getAwardById(@PathVariable("id") Award award) {
        LOG.info("inside the get award method: "+award);
        if (award == null) {
            throw new AwardNotFoundException();
        }

        return new AwardVO(award);
    }

这是生成的文档:

因此,当我将 Long 传递给输入字段时,我没有收到所需的记录。 Swagger 是否支持这种类型的绑定,还是我只需要查找记录并将 PathVariable 作为 Long 传递?

Swagger 版本: 编译“com.mangofactory:swagger-springmvc:0.9.5”

SwaggerConfig:

@Configuration
@EnableSwagger
public class SwaggerConfig extends WebMvcConfigurerAdapter {

    private SpringSwaggerConfig springSwaggerConfig;

    @Autowired
    public void setSpringSwaggerConfig(SpringSwaggerConfig springSwaggerConfig) {
        this.springSwaggerConfig = springSwaggerConfig;
    }

    @Bean
    public SwaggerSpringMvcPlugin customImplementation() {
        return new SwaggerSpringMvcPlugin(this.springSwaggerConfig).apiInfo(
                apiInfo())
                .genericModelSubstitutes(ResponseEntity.class)
                .includePatterns("/v1/.*", "/register/.*");
    }

    private ApiInfo apiInfo() {
        ApiInfo apiInfo = new ApiInfo("API", "API",
                "API terms of service", "email@gmail.com",
                "API Licence Type", "API License URL");
        return apiInfo;
    }

    @Override
    public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
        configurer.enable();
    }
}

谢谢。

【问题讨论】:

  • 如何制作 Swagger 文档?
  • @Ron 我添加了一些有关设置的附加信息。谢谢

标签: spring spring-boot swagger swagger-ui


【解决方案1】:

如果您将@PathVariable 替换为@ModelAttribute,它似乎应该可以正常工作。

要回答您的问题,是的,它确实支持@PathVariable,但仅支持原语或字符串。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-19
    • 1970-01-01
    • 2020-09-09
    相关资源
    最近更新 更多