API

OpenAPI(Swagger)のお勉強

Swaggerをやる必要がでてきた。それもすぐ。

フロントとバックエンドで別れているAPI開発で、仕様書 からコード生成してレスポンスを返すモックサーバを作ってくれる。そのツールがSwagger Tools。

 

 

お勉強しながらまとめます(。- .•)

 

 

Swagger導入のメリット

フロントとバックエンドで別れているチームで効果を発揮する。

  • APIの定義仕様をドキュメント化できる
  • APIの定義からモックサーバを作れる
    この機能によってフロント側の開発がバックエンドの進捗を待つ必要がなくなる。
    バックエンド側もフロント側を待たせることがなくなる。

=>スキーマ駆動

 

用語

SOA

サービス志向アーキテクチャ

WSDL(ウィズダル)

WEBサービス記述言語。Web Service Description Language

 

SOAP

Simple Object Access Protocol.WEBサービス実装の通信プロトコルのこと。

RESTとか。

 

Swagger Tools

 

Swagger Spec

YamlやJSONで記述されたSwagger Spec(Swagger仕様)がSwaggerの中核

Swagger Core

API実装からSwagger Specで記載された設計を自動生成

 

Swagger UI

OpenAPIで記述されたスキーマをドキュメント化するツール

 

Swagger Editor

OpenAPIのスキーマを記述することに特化したオンラインエディタ

  • 記述構文や記述形式にマッチしない記述に警告を出してくれる

 

Swagger Codegen

OpenAPIのスキーマからソースコードを生成するジェネレータ。

  • 様々な言語に対応している。
  • Swagger Editorの中に組み込まれている。Swagger Codegen自体にはUIは存在しない。
    →Generate Server, Generate Clientのメニューからプログラミング言語を選択して自動生成することができる。
  • APIクライアントを自動生成することで開発の手間を省き、フロントとサーバサイドの開発を平行して進められるので圧倒的な効率化の

 

ふむ。概要はわかった。

 

Swaggerを使ってみよう

 

ウィザードに沿ってCreate APIしたら生成されたサンプル

 

なんとなく言いたいことはわかるな。

 

Swagger Editorにアクセスしてみる

 

http://editor.swagger.io/

 

うーんいまいちお猿な私には進捗がとまってしまったな。

 

次の文献へ

これ良いね。やってみよう。

 

 

Swagger Editorの左側にコードを貼り付けたら、右側が非同期で表示されるな。

 

 

ダウンロードされたディレクトリの中で実行

実行

 

 

エラーでてる。。

すでにそのポートは使われてるぜってことなので。

動かしていたDockerを止める。

改めて実行

 

http://localhost:8080/docs
にアクセス

使い方が見えてきました。

 

最初のサンプルも同じようにやってみた

見えてきたね。

 

@see

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)