Help us understand the problem. What is going on with this article?

RestfulなAPI

最近業務でREST APIを作っているのですが、最近までほとんど意識していませんでした…。
自身の備忘録に。

RestfulAPIとは

RESTful APIとは、Webシステムを外部から利用するためのプログラムの呼び出し規約(API)の種類の一つで、RESTと呼ばれる設計原則に従って策定されたもの。RESTそのものは適用範囲の広い抽象的なモデルだが、一般的にはRESTの考え方をWeb APIに適用したものをRESTful APIと呼んでいる。
引用: IT用語辞典 e-Words

一言で言うと、APIの形式の一つでありRESTという設計原則に則っているものになります。
では一体、その設計原則のRESTとは何なのか。

REST(Representational State Transfer)

  • 情報は一つのリクエストで完結し、セッションなどの状態管理を行わない
  • HTTPメソッドなど、命令の体系が定義されている
  • リソース(URL)指向
  • 情報の内部に別の情報やその状態のリンクを含めることができる(HTMLなどで情報を表現する)

上記のような特徴を持っています。
また他の一般的なRESTの特徴として、URLが名詞形であったり、レスポンスがJSON形式で行われたりすることも挙げられます。

REST成熟度モデル

  • レベル0 : HTTPプロトコルを使用している
  • レベル1 : リソースの概念(URL)を導入している
  • レベル2 : HTTPメソッド(POST,GETなど)を使い分けている
  • レベル3 : HATEOASの概念を導入している

RESTはこのような成熟度モデルを持ち、今時のAPIは一般的にレベル2に到達しているものが多いです。
このREST成熟度モデルを参考にすることで、RestfulAPIを設計する際に、自身のAPIがどのレベルにいて、どのように改善させて成熟させていくべきかの指針にすることができます。

終わり

今回紹介したものはほんの一部であり、他にもセキュリティやエラー処理に関しても様々な規則が定められています。
ちなみに、RESTAPIとRestfulAPIはほぼ同義として扱われることが多いですが、RestfulAPIは完璧にRESTに準拠しているということを指すようです。

RestfulAPIについてまだまだ情報が多く処理しきれていないので、おいおい整理していきたいなと。

以上!

yosariii
福岡。 アウトプット大事だなと思って。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした