π HTTP API - 컬λ μ
π POST κΈ°λ° λ±λ‘
πμ) νμ κ΄λ¦¬ API μ 곡
• νμ λͺ©λ‘ /members -> GET
• νμ λ±λ‘ /members -> POST
• νμ μ‘°ν /members/{id} -> GET
• νμ μμ /members/{id} -> PATCH, PUT, POST
• νμ μμ /members/{id} -> DELETE
*μ£Όμ! νμ μμ μ PUTμ νμ μ 보λ₯Ό νλλ λΉ μ§μμ΄ μ λΆ λ€ μ μ‘ν΄μΌ νλ―λ‘ PATCH!!
* λ¨, κ²μκΈ μμ μ κ²½μ°λ λ€λ¦. κ²μκΈμ λΆλΆ μμ μ΄ μλλΌ κ²μκΈ μ 체λ₯Ό ν΄λΌμ΄μΈνΈκ° λ€μ μλ²μ 보λ΄λκΉ PUT!
μ΄κ²μ κ² κ·Έλ₯ λ€ μ λ§€νλ©΄ POST μ°μ
π POST - μ κ· μμ λ±λ‘ νΉμ§
1. ν΄λΌμ΄μΈνΈκ° "username": "hello", "age": 22 λΌλ μ λ³΄λ‘ POST μμ²μ 보λ. (μ΄λ ν΄λΌμ΄μΈνΈλ λ±λ‘λ 리μμ€μ URIλ₯Ό λͺ¨λ¦.)
2. μλ²κ° μλ‘ λ±λ‘λ 리μμ€ URIλ₯Ό μμ±ν΄μ€. μλ²κ° μμμ λ§λ€μ΄μ μλ²κ° κ΄λ¦¬νκ³ μλ²κ° νλ¨ν΄!
->
π 컬λ μ (Collection): μλ²κ° κ΄λ¦¬νλ 리μμ€ λλ ν 리. μμ νμΌ κ΄λ¦¬ μμ€ν μ μμμμ μ€ν μ΄λ /members
π HTTP API - μ€ν μ΄
π PUT κΈ°λ° λ±λ‘
πμ) νμΌ κ΄λ¦¬ μμ€ν
• νμΌ λͺ©λ‘ /files -> GET
• νμΌ μ‘°ν /files/{filename} -> GET
• νμΌ λ±λ‘ /files/{filename} -> PUT
• νμΌ μμ /files/{filename} -> DELETE
• νμΌ λλ λ±λ‘ /files -> POST (*λ±λ‘ν λ PUTμ μ¬μ©νλ―λ‘ POSTλ μμμλ‘ μ§μ )
π PUT- μ κ· μμ λ±λ‘ νΉμ§
1. ν΄λΌμ΄μΈνΈκ° 리μμ€ URIλ₯Ό μκ³ μκ³ μ§μ μ§μ ν¨.
μ¦, νμΌμ λ±λ‘ν λ {filename}μ λ£μ΄μ€μΌ ν¨. μλ₯Ό λ€μ΄ PUT/files/star.jpg
ν΄λΌμ΄μΈνΈκ° μ§μ μ§μ ν΄μ ν΄λΌμ΄μΈνΈκ° μμμ κ΄λ¦¬ν΄!
->
π μ€ν μ΄ (Store): ν΄λΌμ΄μΈνΈκ° κ΄λ¦¬νλ 리μμ€ μ μ₯μ. μμ νμΌ κ΄λ¦¬ μμ€ν μ μμμμ μ€ν μ΄λ /files
μΌλ°μ μΌλ‘ POST κΈ°λ° λ±λ‘ λ°©μμ΄ μ°μ.
π HTTP FORM μ¬μ©
πμΉ νμ΄μ§ νμ κ΄λ¦¬
πGET, POSTλ§ μ§μ
λ¬Όλ‘ AJAX λ±μ μ¬μ©ν΄μ ν΄κ²° κ°λ₯νμ§λ§ μμ HTML FORMλ§ μ¬μ©ν΄μ GET, POSTλ§ μ¬μ©κ°λ₯νλ€λ©΄?
• νμ λͺ©λ‘ /members -> GET
• νμ λ±λ‘ νΌ /members/new -> GET
• νμ λ±λ‘ /members/new, /members -> POST
• νμ μ‘°ν /members/{id} -> GET
• νμ μμ νΌ /members/{id}/edit -> GET
• νμ μμ /members/{id}/edit, /members/{id} -> POST
• νμ μμ /members/{id}/delete -> POST
* νμ λ±λ‘(μμ ) νΌκ³Ό νμ λ±λ‘(μμ ) URIλ₯Ό λ§μΆ°μ£Όλ κ²μ΄ μ’μλ― μλ§..? μ¬λλ§λ€ μ€νμΌμ΄ λ€λ₯΄λ€κ³ νκΈ΄ νμ§λ§.
π 컨νΈλ‘€ URI(컨νΈλ‘€λ¬)
* λ¬Έμ, 컬λ μ , μ€ν μ΄λ‘ ν΄κ²°νκΈ° μ΄λ €μ΄ μΆκ° νλ‘μΈμ€ μ€ν
* GET, POSTλ§μΌλ‘λ μ μ½μ΄ μμ μ μμ. μ΄ κ²½μ° μ΄μ© μ μμ΄ λμ¬λ‘ λ 리μμ€ κ²½λ‘ μ¬μ©ν΄μΌ ν¨.
* POSTμ /new, /edit, /delete λ±λ±.
* μ€λ¬΄μμλ μ΄μμ μΈ λΆλΆκ³Ό λ€λ¦. μ λ§€ν λΆλΆμ΄ λ§μμ λ§μ΄ μ¬μ©λλ€κ³ ν¨. κ·Έλ μ§λ§ μ΄λκΉμ§λ λ체μ μΌ λΏ~!
πURI λ€μ΄λ° μ°Έκ³ λ§ν¬
https://restfulapi.net/resource-naming
'Web > HTTP' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
HTTP ν€λ - μΌλ° ν€λ (0) | 2022.01.11 |
---|---|
HTTP μν μ½λ (0) | 2022.01.11 |
HTTP λ©μλμ νμ© (0) | 2022.01.10 |
HTTP κΈ°λ³Έ κ°λ (0) | 2022.01.10 |
URIμ μΉ λΈλΌμ°μ μμ² νλ¦ (0) | 2022.01.10 |