【开发日记】Swagger添加全局Header参数

设置自定义的header参数,并要求使用人在测试接口时必须填写相应参数。

    @Bean
    public Docket docketBean() {
        //指定使用Swagger2规范
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(new ApiInfoBuilder()
                        //描述字段支持Markdown语法
                        .description(this.applicationName+"的接口文档")
                        .contact(new Contact("二饭","https://gitee.com/StandFast","[email protected]"))
                        .version("1.0")
                        .build())
                .groupName(applicationName)
                .select()
                .apis(RequestHandlerSelectors.basePackage("cn.tworice")) // 指定接口扫描包路径
                .paths(PathSelectors.any())
                .build().globalRequestParameters(globalRequestParameters());
    }

    public List<RequestParameter> globalRequestParameters() {
        RequestParameter token = new RequestParameterBuilder()
                .name("token") // 设置header名称
                .in(ParameterType.HEADER) // 设置参数放在哪个地方,这里是header
                .required(true) // 设置是否必须传
                .build();
        RequestParameter adminID = new RequestParameterBuilder()
                .name("adminID") // 设置header名称
                .in(ParameterType.HEADER) // 设置参数放在哪个地方,这里是header
                .required(true) // 设置是否必须传
                .build();
        List<RequestParameter> parameters = new ArrayList<>();
        parameters.add(token);
        parameters.add(adminID);
        return parameters;
    }

你可能感兴趣的:(开发日记,spring,boot,java)