在多个微服务中使用OpenAPI3(swagger)并生成单个OpenAPI定义
我有一组微服务,每个都有自己完整的OpenAPI规范和根级别的路径 微服务定义在多个微服务中使用OpenAPI3(swagger)并生成单个OpenAPI定义,swagger,openapi,Swagger,Openapi,我有一组微服务,每个都有自己完整的OpenAPI规范和根级别的路径 微服务定义 openapi: 3.0.0 info: description: Microservice API version: '0.0.1' paths: /: get: tags: - Root summary: Root Path operationId: Root responses: '200':
openapi: 3.0.0
info:
description: Microservice API
version: '0.0.1'
paths:
/:
get:
tags:
- Root
summary: Root Path
operationId: Root
responses:
'200':
description: Request was successful
deprecated: false
/healthcheck/ping:
get:
tags:
- Healthcheck
summary: Test the reachability of the microservice.
operationId: Ping
responses:
'200':
description: Request was successful
deprecated: false
openapi: "3.0.0"
info:
version: 1.0.0
title: API
servers:
- url: http://api.something.com/v1
paths:
/microservice1:
$ref: "https://storagebucket.someservice.com/service-definitions/microservice-swagger.yaml"
和根OpenAPI定义
openapi: 3.0.0
info:
description: Microservice API
version: '0.0.1'
paths:
/:
get:
tags:
- Root
summary: Root Path
operationId: Root
responses:
'200':
description: Request was successful
deprecated: false
/healthcheck/ping:
get:
tags:
- Healthcheck
summary: Test the reachability of the microservice.
operationId: Ping
responses:
'200':
description: Request was successful
deprecated: false
openapi: "3.0.0"
info:
version: 1.0.0
title: API
servers:
- url: http://api.something.com/v1
paths:
/microservice1:
$ref: "https://storagebucket.someservice.com/service-definitions/microservice-swagger.yaml"
我的假设是,这样安排事情是可能的,但为了有效性,我在“大摇大摆”编辑器中遇到了大量错误
使用microservice swagger.yaml#/paths/~1
可以让我有所收获,但我希望服务yaml中的所有路径都可以简单地附加到主定义中的路径。有人知道如何做到这一点吗
(其背后的原因是在将每个服务作为一个自包含的单元进行维护的同时,将此root-swagger应用于API网关)
例如,我希望由此产生的大摇大摆能提供这一途径
/microservice1/healthcheck/ping