REST APIとは?

目次

RESTとは何か?

REST(Representational State Transfer) は、
2000年に Roy Fielding が博士論文で定義した「Webアーキテクチャの設計原則」です。

RESTは主に以下のような特徴を満たす設計スタイルです:

  • ステートレス
    • セッション状態は完全にクライアント側に保持される。
      (=サーバはクライアントの状態情報を保持しない)
  • クライアント–サーバ
    • クライアントとサーバーの役割を分離
  • キャッシュ可能
    • データレスポンスが「キャッシュ可能」かどうかを明示
  • 統一インターフェース(Uniform Interface)
    • Identification of resources
      リソースの識別(URI などによってリソースを一意に識別する)。
    • Manipulation of resources through representations
      リソースは “表現(Representation)” を通じて操作される。
    • Self-descriptive messages
      メッセージ自体で意味が理解できる。
    • Hypermedia as the engine of application state
      アプリケーション状態の遷移はハイパーメディアによって行われる(HATEOAS)。
  • 階層化システム
  • コードオンデマンド(オプション)
    • Allows extension of client functionality
      クライアントの機能をサーバから送られたコードによって拡張できる。
    • Reduces the number of pre-implemented features
      クライアント側で事前に実装しておく機能の数を減らすことができる。

REST APIとは?

REST API とは、HTTP を利用した Web API のうち、Roy Fielding が提唱した REST アーキテクチャスタイルの制約(例:クライアント-サーバ、ステートレス、キャッシュ可能、統一インターフェース、階層化システム、コード・オン・デマンド(任意))を満たす設計のものを指します。

参考

IBMのサイトでは、REST APIについて、以下のように記載しています。

REST APIは、分散ハイパーメディアシステムの接続に使用されるREST(Representational State Transfer)アーキテクチャスタイルの設計原則に準拠した
アプリケーションプログラミングインターフェース(API)です。REST APIは、RESTful APIまたはRESTful Web APIと呼ばれることもあります。 

出典:IBM:What is REST API? https://www.ibm.com/think/topics/rest-apis

APIとは

API (アプリケーション プログラミング インターフェイス) は、ソフトウェア アプリケーションが相互に通信してデータ、機能、および機能を交換できるようにする一連のルールまたはプロトコルです。

出典:IBM:What is an API? https://www.ibm.com/think/topics/api

参考

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

AIアーティスト | エンジニア | ライター | 最新のAI技術やトレンド、注目のモデル解説、そして実践に役立つ豊富なリソースまで、幅広い内容を記事にしています。フォローしてねヾ(^^)ノ

コメント

コメントする

目次