今絶賛お仕事中(働いた時間にはカウントしてない)ですが、あるお仕事でREST APIってのを使うらしい。まずAPIをほぼ知らない自分にとって、「APIってなんぞやあああ!」って感じだったんで調べたことをメモ。


* REST APIとは

Representational State Transferの略。 RESTful APIとも呼ばれている。Webシステムを外部から利用するためのプログラムのAPIの一つで、RESTと呼ばれる設計原則に従って策定されたもの。RESTそのものは適用範囲の広い抽象的なモデルだが、一般的にはRESTの考え方をWeb APIに適用したものをRESTful APIと呼んでいる。

RESTの設計原則:

  • セッションなどの状態管理を行わない。(やり取りされる情報はそれ自体で完結して解釈することができる)
  • 情報を操作する命令の体系が予め定義・共有されている。(HTTPのGETやPOSTメソッドなど)
  • すべての情報は汎用的な構文で一意に識別される。(URLやURIなど)
  • 情報の内部に、別の情報や(その情報の別の)状態へのリンクを含めることができる。

ということだそう。 RESTなAPIでないものっていうのは、簡単に言うと処理に対応したURL(例えばユーザー追加:example.com/adduser)を使ったやつ。ちょっと違うかもしれないけど、自分の「大雑把な」捉え方としてはそんな感じ。RESTなAPIになると、対応したURLで処理する、というより、メソッドで処理する感じ?よくわからんけど。webドキュメントにあったものでいうと、「example.com/user、からのGET,POST,PUT,DELETE」みたいな感じ。ユーザ情報の作成/取得/更新/削除を1つの「/user」をURLに対応させるってことみたい。

調べてもあんまり実感ないので実際に使ってみたりするのもいいかもしれないですね〜。もうちょっと調べて使ってみようかなと思いました! ではでは〜。

参考サイト:
0からREST APIについて調べてみた – Qiita
REST入門 基礎知識 – Qiita
REST(Representational State Transfer)とは – IT用語辞典

カテゴリー: Develop