TIL 2021-05-16 (Rest API, Restful)



TIL


What I Learn?


RESTとは?


RESTとは、Representation State Transferの略で、リソースの名前でリソースの状態を区別し、リソースのすべてのコンテンツを交換することを意味します.
つまり、いわゆるREST

  • HTTP URIでリソースを指定します.

  • HTTP方式(POST、GET、PUT、DELETE)による

  • これは、リソース(URI)に対してCRUD動作を適用することを意味する.
  • CRUDとは、コンピュータソフトウェアが有する基本的なデータ処理機能である、作成、読み取り、更新、削除である.
    RESTでのCRUD操作とは:
    作成さくせい:作成(POST)さくせい(POST)
    Read:クエリー(GET)
    更新:変更(PUT)
    Delete:削除(DELETE)

    2)RESTのコンポーネント


    RESTは、以下の3つの要素から構成されています.

  • リソース(Resource):HTTP URI

  • リソース動作(Verb):HTTPメソッド

  • リソースの動作内容:HTTPメッセージPay Load
  • 3)REST APIとは?


    REST APIとは、上述したREST形式に従うAPIである.

    3-1. REST APIを設計する際に注意すべき事項

  • URIは動詞ではなく名詞を使用し、大文字ではなく小文字を使用します.
  • 
    // BAD CASE (URI 를 대문자와 동사로 구성하였음) 🙅
    
    https://yongho.com/Dreaming
    
    
    // GOOD CASE 🙆
    
    https://yongho.com/dream
    
    
  • URIは最後にスラッシュ(/)を含まない.
  • 
    // BAD CASE 🙅
    
    https://yongho.com/dream/
    
    // GOOD CASE 🙆
    
    https://yongho.com/dream
    
  • の代わりに、ハイファイ(-)を使用します.
  • 
    // BAD CASE 🙅
    
    https://yongho.com/dream_cometrue
    
    // GOOD CASE 🙆
    
    https://yongho.com/dream-cometrue
    
  • ファイル拡張子(jpg、png...)URIには含まれません.
  • 
    // BAD CASE 🙅
    
    https://yongho.com/file.png
    
    // GOOD CASE 🙆
    
    https://yongho.com/file
    
  • URIは、特定の動作を含まない.
  • 
    // BAD CASE 🙅
    
    https://yongho.com/create-post/1
    
    // GOOD CASE 🙆
    
    https://yongho.com/post/1
    
  • リソースの動作はHTTPメソッドで表される.
  • Restfulとは?


    RestfulとはRestの原理に従うシステムのことである.
    なお、上記6つの注意点のうちいくつかの審査方式に従っているだけで、RESTfulとは言えません.
    例えば、PostというHTTPメソッドはCRUDのすべての機能を実現することができ、このメソッドのみを用いてすべてのCRUDを構成する行為はRestfulとは見なされない.