HTTP
(HyperText Transfer Protocol)ν μ€νΈ κΈ°λ°μ ν΅μ κ·μ½μΌλ‘ μΈν°λ·μμ λ°μ΄ν°λ₯Ό μ£Όκ³ λ°μ μ μλ νλ‘ν μ½μ΄λ€. μ΄λ κ² κ·μ½μ μ ν΄λμκΈ° λλ¬Έμ λͺ¨λ νλ‘κ·Έλ¨μ΄ μ΄ κ·μ½μ λ§μΆ° κ°λ°ν΄μ μλ‘ μ 보λ₯Ό κ΅νν μ μκ² λμλ€.
μ£Όλ‘ μΉ λΈλΌμ°μ μ μΉ μλ² κ°μ ν΅μ μμ μ¬μ©λλ©°, HTTPλ ν΄λΌμ΄μΈνΈ
κ° μλ²μ μμ²(request)μ 보λ΄λ©΄, μλ²
λ μμ²μ λν μλ΅(response)μ 보λ΄λ λ°©μμΌλ‘ λμν©λλ€.
ν΄λΌμ΄μΈνΈκ° μλ²μ λ°μ΄ν°λ₯Ό μμ²(Request)νλκ²μ μλΉμμ μ£Όλ¬Έμλ₯Ό μμ±νλκ²κ³Ό κ°λ€. μ΄ μ£Όλ¬Έμλ μλ²κ° ν΄λΌμ΄μΈνΈκ° μ΄λ€κ±Έ μνλμ§ νμ
ν μ μκ² ν΄μ€λ€.
μ¬κΈ°μ μμ²νλ λ°μ΄ν°μ νΉμ λμμ νλλ‘ νκΈ° μν΄μ HTTP μμ² λ©μλ(Http Request Methods)λΌλκ±Έ μ΄μ©νλ€.
GET : μ 보 κ²μ ex) κ²μν 리μ€νΈ λΆλ¬μ€κΈ°
POST : μ€ν / μ μ₯ ex) νμκ°μ / λ‘κ·ΈμΈ
PUT : μ 체 μμ ex) νμμ 보 μ 체 μμ
DELETE : μμ ex) νμμ 보 μμ
PATCH : μΌλΆ μμ ex) νμμ 보 μΌλΆ μμ (Updateμ κ°μ₯ κ°κΉκ² μ°μ΄κ³ μλ€)
OPTIONS : μμ€ν μμ μ§μνλ λ©μλ νμΈ
ν΄λΌμ΄μΈνΈκ° μνλ λ°μ΄ν°μ λν μ£Όλ¬Έμλ₯Ό μ μ΄μ μλ²μ 보λ΄λ―μ΄, μλ²λ μλ΅μ λν μ 보λ₯Ό λ΄μ ν΄λΌμ΄μΈνΈλ‘ 보λ΄λλ°, μ΄λ° μ λ³΄κ° λ΄κΈ΄ λ©μμ§λ₯Ό HTTP λ©μμ§λΌκ³ λΆλ₯Έλ€. HTTP λ©μμ§λ ν΄λΌμ΄μΈνΈμ μμ²μ λν httpλ©μμ§μ λ°μ΄ν° μμ²μ λν μλ΅ http λ©μμ§κ° μλ€.
λ©μΈμ§μ ꡬ쑰λ‘λ ν¬κ² 3κ°μ§κ° μμ΅λλ€.
μμ²/μλ΅ λΌμΈ: μμ² λ©μμ§μ κ²½μ°, HTTP λ©μλ(GET, POST, PUT, DELETE λ±)μ μμ² λμ URLμ΄ ν¬ν¨λ©λλ€. μλ΅ λ©μμ§μ κ²½μ°, HTTP λ²μ κ³Ό μν μ½λ(200 OK, 404 Not Found λ±)κ° ν¬ν¨λ©λλ€.
ν€λ: μμ²μ΄λ μλ΅μ λν λΆκ°μ μΈ μ λ³΄κ° ν¬ν¨λ©λλ€. μλ₯Ό λ€μ΄, μμ² ν€λμλ ν΄λΌμ΄μΈνΈκ° μλ²μ 보λ΄λ λ°μ΄ν° νμ , μΈμ¦ μ 보 λ±μ΄ ν¬ν¨λ μ μμ΅λλ€. μλ΅ ν€λμλ μλ²μμ 보λ΄λ λ°μ΄ν°μ νμ , λ°μ΄ν° κΈΈμ΄ λ±μ΄ ν¬ν¨λ μ μμ΅λλ€.
λ°λ: μμ²μ΄λ μλ΅μ λν λ³Έλ¬Έ λ°μ΄ν°κ° ν¬ν¨λ©λλ€. μμ² λ°λλ POSTλ PUT λ©μλμ κ°μ΄ λ°μ΄ν°λ₯Ό μ μ‘ν΄μΌ νλ κ²½μ°μ μ¬μ©λ©λλ€. μλ΅ λ°λλ μλ²μμ ν΄λΌμ΄μΈνΈλ‘ 보λ΄λ μ€μ λ°μ΄ν°κ° ν¬ν¨λ©λλ€.
π₯λͺ¨μ λ©΄μ λ μ§λ¬Έλ°μλ λΆλΆμΌλ‘ μκ³ μμΌλ©΄ μ’μ λ―π₯
HTTP μν μ½λ(HTTP Status Code)λ ν΄λΌμ΄μΈνΈμ μμ²μ λν μλ²μμ μ€μ ν΄μ£Όλ μλ΅(Response) μ 보μ΄λ€.
νλ‘ νΈμλ κ°λ°μμκ² μ΄ μνμ½λκ° μ€μν μ΄μ λ μ΄ μ½λλ₯Ό λ³΄κ³ μλ¬ μ²λ¦¬λ₯Ό ν μ μκΈ° λλ¬Έμ΄λ€. μ£Όμ μν μ½λλ 200λ²λλΆν° 500λ²λκΉμ§ λ€μνκ² μμ΄μ κ°λ¨νκ²λλ§ μ΄ μ½λκ° μλ―Ένλ λ°λ₯Ό μκ³ μμΌλ©΄ λμμ΄ λλ€.
1xx: Informational : μμ² μ 보 μ²λ¦¬ μ€
2xx: Success : μμ²μ μ μμ μΌλ‘ μ²λ¦¬ν¨
3xx: Redirection : μμ²μ μλ£νκΈ° μν΄ μΆκ° λμ νμ
4xx: Client Error : μλ²κ° μμ²μ μ΄ν΄νμ§ λͺ»ν¨
5xx: Server Error : μλ²κ° μμ² μ²λ¦¬ μ€ν¨ν¨
300λ²λμ μν μ½λλ λλΆλΆ ν΄λΌμ΄μΈνΈκ° μ΄μ μ£Όμλ‘ λ°μ΄ν°λ₯Ό μμ²νμ¬ μλ²μμ μ URLλ‘ λ¦¬λ€μ΄λ νΈλ₯Ό μ λνλ κ²½μ°μ΄λ€.
400λ²λ μν μ½λλ λλΆλΆ ν΄λΌμ΄μΈνΈμ μ½λκ° μλͺ»λ κ²½μ°μ΄λ€. μ ν¨νμ§ μμ μμμ μμ²νκ±°λ μμ²μ΄λ κΆνμ΄ μλͺ»λ κ²½μ° λ°μνλλ°, κ°μ₯ μ΅μν μν μ½λλ 404 μ½λμ΄λ€. μμ²ν μμμ΄ μλ²μ μλ€λ μλ―Έλ₯Ό λ§νλ€.