swagger - 如何在 springfox 3.0.0 中使用默认值配置全局标头
问题描述
我需要添加一个具有默认值的全局标头,并且标头参数应该隐藏。有没有人可以给我一些建议?
这是我的代码。
@Bean
public Docket createRestApi() {
// @formatter:off
return new Docket(DocumentationType.OAS_30).apiInfo(apiInfo()).select()
//为当前包路径
.apis(RequestHandlerSelectors.basePackage("com.zmj"))
.paths(PathSelectors.any())
.build()
.globalRequestParameters(Collections.singletonList(platformHeaderParameter()))
;
// @formatter:on
}
private RequestParameter platformHeaderParameter() {
return new RequestParameterBuilder().name("platform").description("来源").in(ParameterType.HEADER).hidden(true)
.parameterSpecificationProvider(new HeaderParameterSpecificationProvider()).query(
builder -> builder.defaultValue("swagger")
.model(modelSpecificationBuilder -> modelSpecificationBuilder.name("swagger2")
.scalarModel(ScalarType.STRING)
.facets(modelFacetsBuilder -> modelFacetsBuilder.title("swagger3")))).build();
}
解决方案
我认为,有一个错误,如果你改变 DocumentationType,你会看到默认值
文档类型.OAS_30
至
DocumentationType.SWAGGER_2
推荐阅读
- javascript - 关于使用 JavaScript 接收流的更一般的问题
- java - 循环 SQL 选择
- sql - 加入不返回某些行
- python - Pandas - 将列表的值连接到数据框中的单个列中
- java - Spring Security 中没有为 id "null" 映射 PasswordEncoder
- python - 托管在 Heroku 上时出现“WebSocket 握手期间出错”
- php - PHP/SQL 根据求和结果进行选择
- windows - Can you have a single domain across 2 servers within Hyper-V Manager?
- node.js - deleteOne, findOneandDelete, findOneandremove are all deleting two documents
- mysql - 如何在mysql中添加'AND'标签排除