はじめに
エンジニアインターンをして約3ヶ月が経とうとしています。
先日の業務でOpenAPIに初めて触れたので、OpenAPIとは何なのか、使い方等を見返せるようメモしていきたいと思います。
そもそもOpenAPIとは
あるサイトにこう書かれていました。
OpenAPIは、いわゆる「Web API」の仕様を形式的に記述するためのフォーマット
もう少し噛み砕くと、「バックエンドがまだ終わってない(タスクが未完)時にフロントエンドだけで実装(挙動)を確認するためのもの」です。
あたかも、バックからデータが返ってきているかのように見せることができます。実際はopenapi.yamlにゴリゴリ書かれているだけですが...
OpenAPIのいじり方
前提条件
localhostの番号はdocker-compose.ymlに書いてあるのでそこを参照
Swagger UIですがdockerイメージを使用しています
1 envファイルを開き、NEXT_PUBLIC_API_SERVER_URL=https:~をNEXT_PUBLIC_API_SERVER_URL=http://localhost:9003 に変更する。
2 http://localhost:3000 で検索するとOpenAPIのexampleで作られたもののみで構成されたものが表示される。
3 直接openapi.yamlに記述するのではなく、Swagger UIというソフトウェアを使用。(http://localhost:9002/ を開いて編集する。(9002はswagger-editorのports番号を使用))
ちなみに、localhost:9001では記述はできないがswagger UIを見ることだけ可能
4 Swagger editorで編集したものをコピーして、openapi.yamlにペーストし、versionを1つあげる。(編集するたびにversionアップが必要です)
5 http://localhost:3000/ を開き検証>Network>1の順に確認する。
dataを開いて、中にデータが入っていれば完璧!
最後に
openAPIを触ったことで、ロジック部分も学びました。しかし、理解が追いつかなかったため前提知識としてDDD、クリーンアーキテクチャの理解が必要だと感じました。