1. はじめに
- OpenAPIのスキーマファイルで文字列について単項目のバリデーションチェックを行いたい
- OpenAPI Generatorでソースコードをジェネレートした時に、チェック処理も自動生成できるようにしたい
2. 開発環境
- OpenAPI 3.0.0
3. スキーマファイル
3.1. 英字の場合
parameters:
- name: input
in: query
required: true
schema:
type: string
pattern: '^([a-zA-Z])+'
3.2. 数字の場合
parameters:
- name: input
in: query
required: true
schema:
type: string
pattern: '^([0-9])+'
3.3. 特殊文字の場合
parameters:
- name: input
in: query
required: true
schema:
type: string
pattern: '^([#$%&-=@*+/.[?_\]\])+'
-
[
,]
を記述する時はエスケープする必要がある
3.4. 全角文字の場合
parameters:
- name: input
in: query
required: true
schema:
type: string
pattern: '^([^\x01-\x7E])+'
3.5. 複数チェックをする場合
- 例: 英数字をチェックする場合
parameters:
- name: input
in: query
required: true
schema:
type: string
pattern: '^([a-zA-Z]|([0-9])+'
-
|
でパイプで繋げることで複数条件を指定することができる
4. 参考文献