REST APIについて

REST APIについて学んだので、学習した内容をこちらにまとめます。

目次

  • 学習した目的
  • 学んだこと

学習した目的

RESTfulなURL設計ができるようになるためにRESTについて学びました。

学んだこと

RESTとは

RESTとは一言で言えば、「分散型システムを構築するときに使う設計ルール」となります。

6つの設計原則から成り立つものになるのですが、それぞれ説明すると説明が長くなりそうなので、RESTについてはここまでとさせて頂いて後続のREST APIの説明に移っていきたいと思います。

 

REST APIについて

REST APIの設計レベルは大きく分けて4段階になるのですが、ここではよく見かけるLEVEL2にスコープを当ててまとめていきたいと思います。

 

REST APIの設計レベル2はリソースごとにHTTPメソッドを活用していく設計となります。

リソースというとサーバリソースかと思われますが、そういった意味のリソースではなくここではあくまでアクセス可能なオブジェクトを指します。

Web API 設計のベスト プラクティス - Azure Architecture Center | Microsoft Learnより以下引用

REST API は "リソース" を中心に設計します。リソースは、クライアントがアクセスできるあらゆる種類のオブジェクト、データ、またはサービスです。

 

そしてHTTPメソッドは以下になります。

  • POST リソースの作成(リソース名が未定)

  • PUT リソースの更新、新規登録(リソース名が決まってる)

  • GET リソースの取得

  • DELETE リソースの削除

まとめ

これまでサーバの運用業務に従事していたときにAPIへどのようなリクエストがいくのか見ていたことがあったのですが、それが上記のような設計方針に則って作られていたとは知りませんでした。

言われてみれば各APIごとにリクエストパラメータのリソース部分が違ってたので、RESTによる設計原則に則って様々なシステムが作られていたんだなと改めて気付かされました。

 

以上です。