Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
開発効率を上げるSwaggerの話
Search
ykagano
April 06, 2018
Programming
0
1.4k
開発効率を上げるSwaggerの話
WEBエンジニア勉強会#06 発表資料
ykagano
April 06, 2018
Tweet
Share
More Decks by ykagano
See All by ykagano
決済システムの信頼性を支える技術と運用の実践
ykagano
0
850
Copilot Agentを普段使いしてわかった、バックエンド開発で使えるTips
ykagano
1
2k
プレイングマネージャーになったときの話
ykagano
2
1.4k
WEBエンジニアが知っておきたい決済の仕組み
ykagano
2
3.7k
プロジェクトにおけるリーダブルコードの考え方
ykagano
2
2.2k
GWにスマートスピーカーアプリを作ってみた
ykagano
1
1.3k
Other Decks in Programming
See All in Programming
競馬で学ぶ機械学習の基本と実践 / Machine Learning with Horse Racing
shoheimitani
14
14k
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.4k
[堅牢.py #1] テストを書かない研究者に送る、最初にテストを書く実験コード入門 / Let's start your ML project by writing tests
shunk031
11
6.2k
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
120
なあ兄弟、 余白の意味を考えてから UI実装してくれ!
ktcryomm
10
9.3k
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
24
19k
オフライン対応!Flutterアプリに全文検索エンジンを実装する @FlutterKaigi2025
itsmedreamwalker
2
330
目的で駆動する、AI時代のアーキテクチャ設計 / purpose-driven-architecture
minodriven
11
3.7k
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
5
2.7k
知られているようで知られていない JavaScriptの仕様 4選
syumai
0
640
仕様がそのままテストになる!Javaで始める振る舞い駆動開発
ohmori_yusuke
8
4.7k
Feature Flags Suck! - KubeCon Atlanta 2025
phodgson
1
190
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
It's Worth the Effort
3n
187
29k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Building Adaptive Systems
keathley
44
2.8k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Rails Girls Zürich Keynote
gr2m
95
14k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Transcript
開発効率を上げる Swaggerの話 @ykagano
1 ▪⾦融系のエンジニアです • SIerの会社 : 電⼦マネーシステムの受託開発 • 電⼦マネーの会社 : Web/スマホアプリ開発・企画
• Web系の会社 : 決済関連のWeb開発 イマココ 加賀野 祐@ykagano
開発効率を上げる Swaggerの話 1. はじめに 2. まず動かしてみる 3. Swagger YAMLを⾒る 4.
APIモックを作る 5. さいごに 2
突然ですが開発に疲れてませんか? 3
Swaggerを使うとこれだけ楽になります 4 ・REST APIの仕様を⾒るのが楽 ・REST APIの実⾏ツールを作るのが楽 ・REST APIの仕様を書くのが楽 ・REST APIのモックを作るのが楽
ということを聞いて⾊々調べたので ここで発表します 5 内容が間違っていたらあとでこっそり教えてください
開発効率を上げる Swaggerの話 1. はじめに 2. まず動かしてみる 3. Swagger YAMLを⾒る 4.
APIモックを作る 5. さいごに 6
Swagger-Editorというオンラインツールを使います 7 まず動かしてみる http://editor.swagger.io/ ※httpsは標準のサンプルがクロスドメインで動かなかった
8 左のウィンドウにyaml形式でAPIの仕様を書くと 右のウィンドウに仕様書がリアルタイムで反映されます
書き上がったら「Generate Server」から ⽣成するサーバーアプリケーションを選択します ここではサクッと動かすため「nodejs-server」を選択します 9
ダウンロードしたzipを解凍して Terminalから解凍したフォルダ内に移動します 10 サーバーが起動しました
11 http://localhost:8080/docs をブラウザで開く 仕様書が⾒える
12 APIが叩ける
元々サンプルとして⽤意されている 13 http://petstore.swagger.io/v2/pet/1 をローカルサーバーから叩いています http://petstore.swagger.io/ を開くとサンプルAPIの仕様書が⾒れます
14 ・REST APIの仕様を⾒るのが楽 ✅ ・REST APIの実⾏ツールを作るのが楽 ✅ ・REST APIの仕様を書くのが楽 ・REST
APIのモックを作るのが楽 ここまでで2つクリア
開発効率を上げる Swaggerの話 1. はじめに 2. まず動かしてみる 3. Swagger YAMLを⾒る 4.
APIモックを作る 5. さいごに 15
16 1. メタデータとサーバー情報の記述 2. エンドポイントの記述 3. モデル定義の記述 サンプルを削ったので⾒ていきます yamlにはざっくりこの3点を書きます
17 1. メタデータとサーバー情報の記述
18 2. エンドポイントの記述
19 3. モデル定義の記述
20 ほら簡単でしょ?
21 ・REST APIの仕様を⾒るのが楽 ✅ ・REST APIの実⾏ツールを作るのが楽 ✅ ・REST APIの仕様を書くのが楽 ✅
・REST APIのモックを作るのが楽 ここまでで3つクリア
開発効率を上げる Swaggerの話 1. はじめに 2. まず動かしてみる 3. Swagger YAMLを⾒る 4.
APIモックを作る 5. さいごに 22
突然ですがオンラインツールだと セキュリティに不安がありませんか? 23
当たり前ですが オフライン版もあります 24 公式 https://swagger.io/swagger-editor/ ソース https://github.com/swagger-api/swagger-editor
Editorをインストールして起動します 25 // git cloneだと重かったので、配布URLからzipでwget $ wget https://codeload.github.com/swagger-api/swagger-editor/zip/master $ unzip
master $ cd swagger-editor-master $ npm install $ npm start あとはオンラインエディタと 使い⽅は同じです
26 ホスト名を書かなければlocalhostが APIサーバーになります
27 APIを叩くと常に同じレスポンスが返ります
28 レスポンスを変えるには yamlでexampleを指定するか seviceフォルダのjsを直接編集します
29 ・REST APIの仕様を⾒るのが楽 ✅ ・REST APIの実⾏ツールを作るのが楽 ✅ ・REST APIの仕様を書くのが楽 ✅
・REST APIのモックを作るのが楽 ✅ これで全部クリア
開発効率を上げる Swaggerの話 1. はじめに 2. まず動かしてみる 3. Swagger YAMLを⾒る 4.
APIモックを作る 5. さいごに 30
今⽇の話はあくまで基本的な使い⽅です REST APIのソースコードにアノテーションを記述して ・ソース=ドキュメント ・ソース=実⾏ツール にしたりもできる(らしい それでは 31
32