μΉ νμ΄νΌλ―Έλμ΄ μμ€ν μ μν κ°λ° μν€ν μ³
HTTP URIλ₯Ό ν΅ν΄ 리μμ€λ₯Ό λͺ
μνκ³
HTTP METHOD( POST / GET / UPDATE / DELETE ) λ₯Ό ν΅ν΄
ν΄λΉ μμμ CRUD Operationμ μ μ©νλκ²μ μλ―Έ
(CRUD Operation = Create(POST) / Read(GET) / Update / Delete )
λ‘ κ΅¬μ±λμ΄ μμΌλ©° μΉ μλΉμ€ λ΄μμ
μμμ μ΄λ¦ ( μμμ νν) μΌλ‘ ꡬλΆνμ¬ ν΄λΉ μμμ μν(μ 보)λ₯Ό μ£Όκ³ λ°λ λͺ¨λ κ²μ μλ―Ένλ€.
μμμ νν ( Resource Representaiton)
μν(μ 보) μ λ¬
μλ² μ ν΄λΌμ΄μΈνΈ λ₯Ό λͺ
νν ꡬλΆνμ¬
μλ‘ κ°μ μμ‘΄μ±μ λμ§ μλλ€.
μλ² : API λ₯Ό μ 곡νκ³ λΉμ§λμ€ λ‘μ§ μ²λ¦¬ λ° μ μ₯μ κ΄λ¦¬νκ³ μ± μμ§λ€.
ν΄λΌμ΄μΈνΈ : μ¬μ©μμ μΈμ¦ , μΈμ λ° λ‘κ·ΈμΈ μ 보λ₯Ό μ§μ κ΄λ¦¬νκ³ μ± μμ§λ€
HTTP νλ‘ν μ½ μ 무μνμ±μΌλ‘
μΈμ
Β·μΏ ν€μ μ κ²½μ°μ§ μμλ λκΈ°μ ꡬνμ΄ λ¨μν΄μΌνλ€.
β μλ²μμ μμ²μ μμ ν λ³κ°μ κ²μΌλ‘ μΈμνμ¬
κ°κ°μ μμ²μ λ³λλ‘ μ²λ¦¬νλ€.
ex) κ° API μλ²λ ν΄λΌμ΄μΈνΈ μμ²λ§μ λ¨μ μ²λ¦¬νλ€.
μ΄ λ, μ΄μ μμ²μ΄ λ€μ μμ²μ μ²λ¦¬μ μ°κ΄λμ΄μλ μλλ€.
( λ¬Όλ‘ μ΄μ μμ²μ΄ DBλ₯Ό μμ νμ¬ DBμ μν΄ λ°λλ κ²μ νμ© )
μ΄λ‘μΈν΄ μλ²μ μ²λ¦¬λ°©μμ μΌκ΄μ±μ΄ λΆμ¬λκ³ , λΆλ΄μ΄ μ€μ΄λ€λ©° μλΉμ€μ μμ λκ° λμμ§λ€.
+μΊμ± κΈ°λ₯μ ν΅ν΄ μλ΅μ΄ λΉ¨λΌ μ§κ³
μλ² νΈλμμ
μ΄ λ°μνμ§ μκ³ μλ²μμ μ΄μ©λ₯ μ ν₯μμν¨λ€.
ν΄λΌμ΄μΈνΈκ° μ€μ§ REST API μλ²λ§ νΈμΆνλ€
λ°λΌμ REST μλ²λ λ€μΈ΅μΌλ‘ ꡬνν΄μΌνλ€.
API μλ²λ μμ λΉμ§λμ€ λ‘μ§μ μννκ³
보μ Β· λ‘λλ°Έλ°μ± Β· μνΈν Β· μ¬μ©μμΈμ¦ λ±μ ꡬ쑰λ
λ€λ₯Έκ³μΈ΅μ μ€μ νμ¬ κ΅¬μ‘°μμ μ μ°μ±μ μ 리νλ€.
URIλ‘ μ§μ ν Resource μ λν μ‘°μμ ν΅μΌλκ³ νμ λ μΈν°νμ΄μ€λ‘ μννλ€.
HTTP νμ€ νλ‘ν μ½μ λͺ¨λ νλ«νΌμμ μ¬μ© κ°λ₯ν΄μΌνκΈ°μ
νΉμ μΈμ΄ λ κΈ°μ μ μ’
μλμ΄μ μλλ€.
REST κΈ°λ°μΌλ‘ μλΉμ€ API λ₯Ό ꡬνν κ²μ REST APIλΌ λΆλ₯Έλ€
REST κΈ°λ°μΌλ‘ μμ€ν
μ λΆμ°νμ¬ νμ₯μ±κ³Ό μ¬μ¬μ©μ±μ λνκ³
μ μ§λ³΄μ Β· μ΄μ©μ νΈλ¦¬νκ²νλ€.
REST κΈ°λ°μ΄κΈ°μ λΉμ°ν HTTP νμ€ νλ‘ν μ½μ κΈ°λ°μΌλ‘ νλ©°,
HTTP μ μλ² <-> ν΄λΌμ΄μΈνΈμ ꡬ쑰λ₯Ό ꡬνν μ μλ€.
URI λ μ 보μ μμμ ννν΄μΌ νλ€.
μμμ λν νμλ HTTP METHOD ( POST , GET , UPDATE , DELETE ) λ‘ ννν΄μΌνλ€.
μ¬λμ (/) λ κ³μΈ΅ κ΄κ³λ₯Ό λνλ΄λλ° μ¬μ©νλ€.
νμ΄ν (-) URI κ°λ μ±μ λμ΄κΈ° μν΄ μ¬μ© κ°λ₯νλ€
μΈλλ° (_) λ URIμμ μ¬μ©νμ§ μλλ€
URI κ²½λ‘μ λλ¬Έμ μ¬μ©μ νΌνλλ‘νλ€.
νμΌ νμ₯μ (.file) μ URI μ ν¬ν¨νμ§ μλλ€
REST μν€ν μ³λ₯Ό ꡬννλ μΉ μλΉμ€λ₯Ό νκ°νλ μ©μ΄
REST κ°λ
κ³Ό νΉμ§μ μ μ¬μ© Β· ννν μΉ μλΉμ€λ₯Ό
"RESTful" λ‘ νμ©νλ€
CRUD κΈ°λ₯μ POSTλ‘λ§ μ²λ¦¬νλ κ²½μ°
REST API κ·μΉ Β· νΉμ§μ λ§μ§ μλ κ²½μ°
https://gmlwjd9405.github.io/2018/09/21/rest-and-restful.html