You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在swag-go中一次性配置通用HTTP请求头?

实现Swagger UI全局Authorization请求头复用

针对你的需求,分两种主流Swagger实现方案给出配置方式:

一、Springfox(Swagger 2.x,适配Spring Boot 2.x及以下)

在Swagger配置类中,通过Docket的globalOperationParameters方法添加全局请求头参数,配置后Swagger UI顶部会出现全局输入框,填写一次后所有接口自动携带该请求头:

@Configuration
@EnableSwagger2
public class SwaggerConfig {
    @Bean
    public Docket api() {
        return new Docket(DocumentationType.SWAGGER_2)
                .select()
                // 替换成你的接口所在包路径
                .apis(RequestHandlerSelectors.basePackage("com.your.project.controller"))
                .paths(PathSelectors.any())
                .build()
                .globalOperationParameters(Collections.singletonList(
                        new ParameterBuilder()
                                .name("Authorization")
                                .description("认证Token格式:Bearer {token}")
                                .modelRef(new ModelRef("string"))
                                .parameterType("header")
                                // 根据业务需求设置是否必填
                                .required(true)
                                .build()
                ));
    }
}

二、SpringDoc OpenAPI(适配Spring Boot 3.x及以上,OpenAPI 3.x规范)

通过全局安全注解配置,Swagger UI右上角会出现「Authorize」按钮,点击输入Token后所有接口自动复用认证信息:

@Configuration
// 全局启用该安全认证方案
@OpenAPIDefinition(security = { @SecurityRequirement(name = "BearerAuth") })
// 定义Bearer Token认证规则
@SecurityScheme(
        name = "BearerAuth",
        type = SecuritySchemeType.HTTP,
        scheme = "bearer",
        bearerFormat = "JWT",
        description = "输入格式:Bearer {你的JWT Token}"
)
public class OpenApiConfig {
    @Bean
    public GroupedOpenApi publicApi() {
        return GroupedOpenApi.builder()
                .group("public-api")
                .pathsToMatch("/**")
                .build();
    }
}

特殊情况处理

如果个别接口不需要携带Authorization头:

  • Springfox:在对应接口方法上添加@ApiImplicitParams覆盖全局参数,或者在Docket中排除该接口路径
  • SpringDoc:在对应接口方法上添加@SecurityRequirements(empty = true),取消该接口的认证要求

内容的提问来源于stack exchange,提问作者vyakhir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 04:20:25