概要
『Software Design』特集記事のうち,大好評を博したWeb API特集記事を1冊に収めました。
もはやWebにとって,Web APIこそが要です。Web APIを適切かつ効率的に開発できるかどうかが,Webサービスのその後を大きく左右するとも言えます。本書は,今まさにWeb APIを開発・運用する中で得られた実践的な知見が凝縮されています。
第1章では,OpenAPIを題材に,Webの基礎からさかのぼってWeb APIを再考し,REST APIの設計要素と,OpenAPIによるREST APIの設計手法およびREST APIの開発の実際の部分までつまびらかにします。第2章では,代わってGoogleが開発したRPCフレームワーク,gRPCにフォーカスし,その概要と,重要な技術要素であるProtocol Buffersの基礎を確認し,設計ポイントに触れ,gRPCによるWeb APIの実装を体験します。続く第3章では,GraphQLによるWebアプリケーションの開発・運用手法を一挙に解説。GraphQLの導入,TypeScript+Apollo Serverによるサーバサイドの実装,urqlやgraphql-codegenを駆使したクライアントアプリケーションの実装,そしてDatadogによるモニタリングやSentryによるエラートラッキングをベースとしたAPIの拡張手法にまで踏み込みます。
もちろん,Web APIは品質も重要です。本書では「テスト」「セキュリティ」の2つの観点でWeb APIの品質確保について考えます。第4章では,テストスコープをキーワードとしてWeb APIをテストする意義を見つめ直した上で,CRUD操作やエラーハンドリング,認証・認可設定,データ漏洩,バリデーション,メトリクスなど何をテストすべきか考え,Web APIテストを現実的に進める上で,カバレッジの目安やパフォーマンステストの実施フェーズ,実験計画などの考え方について考察します。第5章は,石川朝久氏や徳丸浩氏といったセキュリティの第一人者を中心に,Web APIのセキュリティに正面から向き合う極意を伝授します。Web APIはどのような攻撃にさらされるのか,リスクや攻撃手法,脆弱性から紐解き,「DevOps」「シフトレフト」を起点に,Web API設計からセキュリティを組み込む考え方を紹介。脆弱性診断や認証・認可設定の具体的な実施方法まで解説します。
まさしく,Web APIがまるごとわかる1冊なのです。
こんな方におすすめ
- Web開発者
- REST API/GraphQL/gRPC開発者
- Web APIのテスト手法やセキュリティ対策など,一歩進んだ開発/運用について学びたい人