我正在编写一个Open API 3.0规范,并试图让response links在Swagger UI v 3.18.3中呈现。
示例:
openapi: 3.0.0
info:
title: Test
version: '1.0'
tags:
- name: Artifacts
paths:
/artifacts:
post:
tags:
- Artifacts
operationId: createArtifact
requestBody:
content:
application/octet-stream:
schema:
type: string
format: binary
responses:
201:
description: create
headers:
Location:
schema:
type: string
format: uri
example: /artifacts/100
content:
application/json:
schema:
type: object
properties:
artifactId:
type: integer
format: int64
links:
Read Artifact:
operationId: getArtifact
parameters:
artifact-id: '$response.body#/artifactId'
/artifacts/{artifact-id}:
parameters:
- name: artifact-id
in: path
required: true
schema:
type: integer
format: int64
get:
tags:
- Artifacts
operationId: getArtifact
responses:
200:
description: read
content:
application/octet-stream:
schema:
type: string
format: binary
提供这样的链接:
这是预期的吗?我问是因为operationId
在UI上公开,并且parameters
被显示为JSON引用,这使得某些内容似乎无法正确显示。我本来希望有一个超链接或某种东西可以带我到Swagger网页的相应部分,该部分与该链接所引用的API相对应。
答案 0 :(得分:1)
是的,这就是Swagger UI当前呈现OAS3 links
的方式。 links
的呈现是their OAS3 support backlog上的事情之一:
OAS 3.0支持待办事项
这是Swagger-UI尚不支持的OAS3规范功能的收集票。
...
[]链接不能用于执行其他操作
[]链接级服务器不可用于执行请求