博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring boot + io.springfox Swagger2 统一添加header 参数的方法:globalOperationParameters
阅读量:6670 次
发布时间:2019-06-25

本文共 1853 字,大约阅读时间需要 6 分钟。

hot3.png

在百度上面找了好久也没找到一个满意的答案

在所有rest统一添加一个参数应该属于一个通用的解决办法,比如统一添加basic验证,或者token,apiKey

 

使用如下代码可以在swagger-ui上面自动显示需要添加的header参数

但是会对所有的rest添加,如果想只在部分添加,login这样的不需要添加怎么办呢?暂时没找到办法

如果你有办法请写在评论里,供后面的人来用,如果我发现办法了,也会写在评论里

 

package com.XXXX.config;

import java.util.ArrayList;

import java.util.List;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import springfox.documentation.builders.ParameterBuilder;

import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.schema.ModelRef;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Parameter;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration

@EnableSwagger2
public class SwaggerConfig
{
  
 
  public Docket petApi()
  {

//可以添加多个header或参数

    ParameterBuilder aParameterBuilder = new ParameterBuilder();
    aParameterBuilder.name("Authorization").description("i").modelRef(new ModelRef("string")).parameterType("header").required(false).build();
    ParameterBuilder aParameterBuilder1 = new ParameterBuilder();
    aParameterBuilder1.name("token").description("").modelRef(new ModelRef("string")).parameterType("query").required(false).build();
    List<Parameter> aParameters = new ArrayList<Parameter>();
    aParameters.add(aParameterBuilder.build());
    aParameters.add(aParameterBuilder1.build());
    return new Docket(DocumentationType.SWAGGER_2).apiInfo(getApiInfo()).useDefaultResponseMessages(false).globalOperationParameters(aParameters);
  }
  
  private ApiInfo getApiInfo()
  {
    ApiInfo ai = new ApiInfo("XXXXX", "XXXXXX", null, null, null, null, null);
    return ai;
  }
  
}
 

转载于:https://my.oschina.net/gs80140/blog/867405

你可能感兴趣的文章
linux进程同步机制_转
查看>>
PHP框架认识初步
查看>>
给 Android 初学者的 Gradle 知识普及
查看>>
分模块开发创建Action子模块——(九)
查看>>
基于Nginx实现一个自己的HTTP模块
查看>>
LeetCode(34)-Palindrome Number
查看>>
阅读《Android 从入门到精通》(24)——切换图片
查看>>
SimpleDateFormat线程不安全及解决的方法
查看>>
Unity---------Mesh理解
查看>>
hdu 1728 逃离迷宫 bfs记转向
查看>>
一分钟学会 ConstraintLayout 之从属性角度理解布局
查看>>
线程 Timer TimerTask 计时器 定时任务 MD
查看>>
[js高手之路]原型式继承与寄生式继承
查看>>
MBR分区操作-增加、扩展、删除
查看>>
geoserver使用curl发布 imagemosaic(转载)
查看>>
RabbitMQ 参数们的Power “续”
查看>>
windows 显示桌面.scf
查看>>
git 忽略文件
查看>>
layui 数据表格 根据值(1=业务,2=机构)显示中文名称
查看>>
【Django】pip 安装和卸载 Django
查看>>