REST API

1981 ワード

REST APIの構成

  • リソース(RESOURCE)-URI
  • 挙動(Verb)-HTTP METHOD
  • 表記法
  • RESTの特徴

  • Uniform(ユニフォームインタフェース)
    Uniform Interfaceは、URIとして指定されたリソースに対して統一的で限定的なインタフェース操作を実行するアーキテクチャスタイルです.
  • ステータスなし
    RESTは無状態性を有する.すなわち、タスクのステータス情報は格納されず、管理されません.APIサーバは、セッション情報またはCookie情報を格納および管理しないため、受信された要求を処理するだけである.これにより、サービスの自由度が向上し、サーバ管理に不要な情報が削減され、実装が簡素化されます.
  • Cacheable(キャッシュ可能)
    RESTの最大の特徴の1つは、HTTPという既存のWeb標準を採用しているため、Web上の既存のインフラストラクチャを完全に利用することができます.したがって,HTTPが提供するキャッシュ機能は利用可能である.HTTPプロトコル規格で使用されている最新タグまたはE-Tagを使用してキャッシュを実現します.
  • 自己記述(自己表現構造)
    RESTのもう一つの大きな特徴は,REST APIメッセージのみを見ても容易に理解できる独自の表現構造を持つことである.
  • クライアント-サーバ構造
    RESTサーバはAPIを提供するため、クライアントはユーザ認証またはコンテキスト(セッション、ログイン情報)を直接管理するため、各ロール間に明確な区別があるため、クライアントとサーバが開発する必要があるコンテンツはより明確であり、相互の依存性はより小さい.
  • 階層構造
    RESTサーバは複数の層に分けられ、セキュリティ、ロードバランシング、暗号化層を追加することで、構造の柔軟性を提供し、PROXYやゲートウェイなどのネットワークベースの中間媒体を使用することができます.
  • REST API設計ガイドライン


    REST APIの設計時
    まず,URIは情報のリソースを表す必要がある.
    第二に、リソースの挙動は、HTTPメソッド(GET、POST、PUT、DELETE)として表される.

    REST APIを中心としたルール


  • URIは情報のリソースを表す必要がある.(リソース名は動詞ではなく名詞を使用します)
    GET /members/delete/1
    上記の方式は、RESTが正しく適用されていないURIである.URIはリソースの表示に重点を置くべきである.deleteなどの行為を含むべきではない表現.

  • リソースの挙動をHTTPメソッド(GET,POST,PUT,DELETEなど)と表す.
    上記のエラーURIをHTTPメソッドで修正します.
    DELETE /members/1
    .
  • メンバー情報のインポートにはGET、メンバーの追加にはPOST METHODを使用します.
    # 회원정보를 가져오는 URI
    GET /members/show/1     (x)
    GET /members/1          (o)
    
    # 회원을 추가할 때
    GET /members/insert/2 (x)  - GET 메서드는 리소스 생성에 맞지 않습니다.
    POST /members/2       (o)
    [注意]HTTP METHODの適切な役割
    POST、GET、PUT、DELETEは、4つの方法でCRUDを行うことができる.
    METHODロールPOSTOSTでURIを要求すると、リソースが作成されます.GETGETでリソースを検索します.リソースを問合せ、図の詳細を取得します.PUTPUTでリソースを変更します.DELETEDELETEでリソースを削除します.
    以下の方法により、URIはリソースの表現に専念し、動作の定義は、HTTP METHODによって返されるAPIを設計する中心規則である.