Swagger与春季启动微服务

时间:2018-04-02 11:01:07

标签: spring-boot filter swagger microservices swagger-ui

我有一个 microservice-A ,它将令牌作为另一个 microservice-B 的标头。现在我想在microservice-A 中实现 swagger2。问题是每个请求流经microservice-B 。所以 swagger-ui在本地抛出错误

  

它无法获得微服务-B所属的那些头参数   试图获取。

1 个答案:

答案 0 :(得分:0)

  

无法获得微服务-B尝试获取的头参数。

Swagger本身无法调用身份验证服务并将获取的令牌添加到另一个请求的标头中。

您可以修改Docket对象以接受标题中的其他参数,如下所示:

docket.globalOperationParameters(
    Collections.singletonList(new ParameterBuilder()
      .name("Authorization")
      .description("Bearer [token]")
      .modelRef(new ModelRef("string"))
      .parameterType("string")
      .required(true)
      .build()
    )
);

这将允许Swagger UI显示接受令牌的附加字段(参见下图)。您需要自己获取令牌,并且可以放入此字段。

enter image description here希望这有帮助。