API 사양서 작성한다면 swagger v2.0에서 v3.0으로 변경할 때의 포인트
8997 단어 swaggeropenapi3.0.0swagger2.0
소개
최근 API 스펙을 작성하기 위해 swagger을 사용하기 시작하고
swagger2.0
와 openapi3.0.0
그 때 버전의 차이로 기재 방법에 변경점이 있었으므로, 메모 대신으로서 기재합니다.v2.0
우선 가장 간단한 형태
swagger: '2.0'
paths:
/api/regist:
post:
consumes:
- application/x-www-form-urlencoded
parameters:
- name: hoge_id
in: query
description: クエリパラメータ
type: integer
required: true
- name: hoge_name
in: formData
description: 名前
required: true
type: string
- name: age
in: formData
description: 年齢
required: true
type: string
- name: comment
in: formData
description: コメント
type: string
required: true
maxLength: 1000
responses:
200:
description: ok
v3.0
openapi: 3.0.0
paths:
/api/regist:
post:
parameters:
- in: query
name: id
required: true
description: クエリパラメータ
schema:
$ref: '#/components/schemas/id'
requestBody:
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/RequestBody'
responses:
200:
description: ok
components:
schemas:
id:
type: string
example: '1'
name:
description: 名前
required:
- name
type: string
example: テスト太郎
age:
description: 年齢
required:
- age
type: string
example: '18'
comment:
description: コメント
required:
- comment
type: string
maxLength: 1000
example: コメントコメント
RequestBody:
type: object
required:
- name
- age
- comment
properties:
name:
$ref: '#/components/schemas/name'
age:
$ref: '#/components/schemas/age'
comment:
$ref: '#/components/schemas/comment'
v3.0과의 변경점
body
및 formData
가 requestBody
v2.0
definitions:
- comment:
v3.0
components:
schemas:
- comment:
type
는 schema로 정의 required: true
대신 대상 지정 사이고에게
개인적으로 v2.0이 description이 보기 쉽기 때문에 v3.0은 바람직하지 않네요...
손님에게 보여주는 것을 생각하면 description이 보기 쉬운 위치에 있는 것도 중요하고.
Reference
이 문제에 관하여(API 사양서 작성한다면 swagger v2.0에서 v3.0으로 변경할 때의 포인트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/shunichi_com/items/e63114f8d67beba14bfd텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)