#author("2021-05-06T08:48:36+00:00","default:admin","admin") -[[5分で絶対に分かるAPI設計の考え方とポイント:http://www.atmarkit.co.jp/ait/articles/1511/19/news022.html]] -[[翻訳: WebAPI 設計のベストプラクティス:http://qiita.com/mserizawa/items/b833e407d89abd21ee72]] -[[GoogleのWebAPI設計とWebAPI設計のベストプラクティスを比較してみる:http://qiita.com/howdy39/items/3b2b14ce73ec44c54f7b]] -[[「WebAPI 設計のベストプラクティス」に対する所感:http://qiita.com/ryo88c/items/0a3c7861015861026e00]] -[[WebAPIの設計から実装まで〜設計編〜:http://qiita.com/takeokunnn/items/5442bb266fee6ee07799]] -[[WebAPIの設計から実装まで〜実装編〜:http://qiita.com/takeokunnn/items/c119e576a6c04d37e098]] -[[API 設計: gRPC、OpenAPI、REST の概要と、それらを使用するタイミングを理解する:https://cloud.google.com/blog/ja/products/api-management/understanding-grpc-openapi-and-rest-and-when-to-use-them]] -[[Swagger、GraphQL、gRPC+Protocol Buffersの概観:https://qiita.com/ara_tack/items/f1252d335a0f18f96a4c]] -[[OpenAPI や Protocol Buffers のおかげで開発がかなり捗っている話:https://developer.medley.jp/entry/2020/08/21/190934]] -[[マイクロサービスにおけるWeb APIスキーマの管理 ─ GraphQL、gRPC、OpenAPIの特徴と使いどころ:https://employment.en-japan.com/engineerhub/entry/2019/08/22/103000]] -[[ASP.NET CoreでgRPCサービスを作ってみた:https://www.qes.co.jp/media/Microservices/a64]] -[[IoTと業務システムをつなぐgRPC/RESTサービスの開発と運用:https://engineer.dena.com/posts/2020.03/mov-central-service/]] *レスポンス [#t851304e] -[[RESTful APIのHTTPステータスコード設計:https://qiita.com/NagaokaKenichi/items/eb85b5fbb719d60c6627]] **エラー [#t29c2016] -[[RESTful APIのエラー設計:https://qiita.com/NagaokaKenichi/items/20825ae9256d9f4c6f35]] -[[WebAPIでエラーをどう表現すべき?15のサービスを調査してみた:https://qiita.com/suin/items/f7ac4de914e9f3f35884]] ***セキュアなエラーフィードバック [#k8c256be] -403 Forbidden --データへのアクセス不許可 → データが存在することを暗に認めていることになる --「404 Not Found」レスポンスに変えることも検討する -500 Internal Server Error --APIのベースとなっている技術スタックに関する詳細情報が提供されないようにすること --APIの内部で実際に稼働しているものの手がかりになるような情報を提供しないように注意する必要がある *ファイルアップロード [#rdf307bd] -[[WebAPI でファイルをアップロードする方法アレコレ:https://qiita.com/mserizawa/items/7f1b9e5077fd3a9d336b]]