REST API


API


Application Programming Interfaces


オペレーティングシステムまたはプログラミング言語の制御に使用されるインタフェース(標準)

1)サーバとデータベースのエントリロール

  • ユーザーのみが
  • にアクセスできます.

    2)アプリケーションとデバイス間の通信が円滑であることを確保する


    3)すべての接続を標準化する


    REST


    Representational State Transfer


    リソースの表示形式に基づいてステータスを渡す


    HTTP URIでリソースを指定し、HTTPメソッドでリソースにCRUD操作を適用する


    リソース:データベースのメンバー情報
    表示法:Users(tablename)

    構成REST


    1)資源(資源)


    URI

    2)Verb(動作)


    HTTP Method( GET, POST, PUT, DELETE )

    3)Representation(表示)

    JSON, XML, EXT, RSS ...

    REST特性


    1) Server-Client

  • サーバ:
  • 、リソース、API、論理処理、およびストレージの提供
  • クライアント:リソースリクエスト、ユーザー認証、またはコンテキストを直接管理し、
  • を担当します.
  • 相互依存性を減少させる
  • .

    2)無状態

  • ステータス情報の格納と管理なし
  • session(クッキーなどのクライアントのコンテキスト情報に関心を持つ必要はありません)
  • APIサーバは、クライアントからの要求
  • のみを処理する
  • はサービスの自由度を高め、
  • のみを実施する.

    3)Cacheable(キャッシュ可能)

  • は、Web標準HTTPを採用するため、Web上の既存のインフラストラクチャ
  • を完全に利用することができる.
  • HTTPキャッシュ可能
  • HTTPで使用するテスト済みラベルは、E-Tagでキャッシュ
  • を実現できる.

    4)統合インタフェース(インタフェースの一貫性)

  • URIを使用して指定されたリソースに対して統一的で限られた操作を行い、
  • .

    5)階層化システム

  • クライアントはREST APIサーバ
  • のみを呼び出す
  • RESTサーバは、多層
  • として構成することができる.
  • PROXY、ゲートウェイなどのネットワークベースのメディアをサポートする
  • REST API


    RESTベースのサービスAPIの実装


    1)URIは情報のリソースを表示しなければならない


    2)リソースの挙動をHTTPメソッド(GET,POST,PUT,DELETE)と表す.


    REST API設計規則


    1)スラッシュ区切り記号(/)階層関係を表す


    2)URIの最後の文字はスラッシュ(/)を含まない

    http://example.com/test 	(O)
    http://example.com/test/ 	(X)

    3)ハイフン(-)URIによる毒性向上


    4)参照下図()URIに使用しない


    5)URIパスの小文字有効


    6)URIはファイル拡張子を含まない

    http://example.com/test/image.jpg	(X)
    
    // Accept Header를 사용해야 함

    RESTful


    RESTを実装するWebサービスを示す用語


    REST APIを提供するサイト


    POST処理CRUD機能のみを使用するAPIはRESTfulできません

    HTTP応答状態コード


    ステータスコード1 XXトランスポートプロトコルレベルの情報交換200クライアントは、201クライアントを正常に実行するように要求し、どのリソースを作成するかを要求する.リソースの正常な作成(POSTによるリソースの作成操作)3 XXclientは、許可されていない401 clientで保護されたリソースを要求する400 client要求を完了するために他のアクションを実行する必要があります(ログイン時に使用可能なリソースを要求していないユーザー)5 XXServer error(クライアントが要求する405クライアントが要求するリソースで使用できない方法)403ユーザ認証状態に関係のないリソースに応答するために使用される

    リファレンス


    APIとは?
    REST APIの理解と使用
    RESTとは?REST APIとは?RESTfulとは?