2
0

O'Reilly Japan - Web API: The Good Parts の読書メモです。

日本語に準拠しているというか、日本語にも親切だなと読んでいたら著者は日本の方 水野 貴明 さんという方であった。
プログラミング歴40年 ソフトウェア開発者 水野さんの仕事の流儀 - Tech Team Journal
mizuno_takaakiの日記

端的には:

  • 初めて Web API の設計をするなら読んでおくと良し
  • 初めて Web API を扱うならその流儀を知るために読んでおくと良し

と思いました。

第1章 Web APIとは何か

  • Web APIを公開していないなら、すぐにその公開を検討しよう
  • Web APIを美しく設計しよう
  • RESTという言葉にこだわりすぎないようにしよう

第2章 エンドポイントの設計とリクエストの形式

  • 覚えやすく、どんな機能を持つかがひと目でわかるエンドポイントにしよう
  • 適切な HTTP メソッドを利用しよう
  • 適切な英単語を利用し、単数形、複数形にも注意しよう
  • 認証には OAuth 2.0 を使おう

第3章 レスポンスデータの設計

  • 多くのAPIで同じ意味に利用されている一般的な単語を用いよう
  • なるべく少ない単語数で表現しよう
  • 複数の単語を連結する場合、その連結方法はAPI全体を通して統一しよう
  • 変な省略形は極力利用しないようにしよう
  • 単数形/複数形に気をつけよう
  • JSON、あるいは目的に応じたデータ形式を採用しよう
  • データを不要なエンベロープで包まないようにしよう
  • レスポンスをできるかぎりフラットな構造にしよう
  • 各データの名前を簡潔で理解しやすくし、適切な単数複数を用いよう
  • エラーの形式を統一し、クライアント側でエラー詳細を機械的に理解可能にしよう

第4章 HTTPの仕様を最大限利用する

  • HTTPの仕様を最大限利用し、独自仕様の利用を最低限にとどめよう
  • 適切なステータスコードを用いよう
  • 適切な、なるべく一般的なメディアタイプを返そう
  • クライアントが適切なキャッシュを行えるように情報を返そう

第5章 設計変更をしやすいWeb APIを作る

  • API のバージョンの更新は最低限にとどめ、後方互換性にも注意しよう
  • API のバージョンはメジャーバージョンを URI に含めよう
  • API の提供終了時はすぐに終了するのではなく最低 6 ヶ月公開を続けよう

第6章 堅牢なWeb APIを作る

  • 個人情報など特定のユーザー以外に漏洩したくない情報がある場合はHTTPSを使おう
  • XSS、XSRF など通常のウェブと同様のセキュリティだけでなくJSONハイジャックなどAPI特有の脆弱性に気を配ろう
  • セキュリティ強化につながる HTTP ヘッダをきちんと付けよう
  • レートリミットを設けることで一部のユーザーによる過度のアクセスによる負荷を防ごう

その他

参考

Web API: The Good Partsを読んだまとめ #設計 - Qiita
Web API The Good Partsを読んだのでまとめる #設計 - Qiita
【Oreilly】Web API The Good Parts
Web API The Good Partsを読んだ感想 | フューチャー技術ブログ

以上です~

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0