- β HTTPμ 1>πRequest, Response ꡬ쑰μ 2>πHTTPμ νΉμ§ stateless & 3>ποΈHTTP Request Methods μ’ λ₯μ κ°κ°μ μ°¨μ΄λ₯Ό μκ³ 4>ποΈResponse Status Codesμ 무μμ΄ μλμ§κΉμ§ μμ보μ!!!!!
- π‘
HTTP
λ ν΅μ μ νκΈ° μν΄ λ§λ κ·μ½μ΄λ€.
1 .
HyperText
λ λ¬Έμμ λ¬Έμκ° λ§ν¬λ‘ μ°κ²°λμ΄ μμ μλ―Ένκ³
2.Transper
λHTML
λ‘ λ§λ μΉνμ΄μ§ λ¬Έμ(νμΌ)μ 보λΈλ€λ μλ―Έμ΄λ©°
3.Protocol
λ μ»΄ν¨ν° μ¬μ΄μμ μ΄λ»κ² HTML νμΌμ μ£Όκ³ λ°μ λμ μν΅μ μν΄μ λ§λ λ°©μμ΄μ μ½μμ μλ―Ένλ€
=> λ΄κ° λ§λ HTML νμΌμ λ€λ₯Έ μ¬μ©μμ μ»΄ν¨ν°λ‘ μ μ‘νλ κ³Όμ μ λν΄μ μ½μλ κ·μ½μ μλ―Ένλ€.
1>
ν΄λΌλ¦¬μΈνΈ μ¬μ΄λ
μμ μ’μμ λ²νΌμ λν μμ²μ μλ²μ 보λΈλ€
2> μΈμ€νκ·Έλ¨μμλ²
μΈ‘μ ν΄λΉ μμ²μ λ°κ³ κ·Έμ λν μλ΅μ ν΄μ€λ€.
=> μ΄λ κ²μμ²κ³Ό μλ΅
μ λ³΄λΌ λ HTTP μ μ½μμ λ§κ² μλ‘μκ² μ λ¬λλ€.
- π
μμ²κ³Ό μλ΅
μν΅μ ν΅μ¬μ λ°λ‘ πμμ²κ³Ό μλ΅
μ΄λ€. μ»΄ν¨ν°μ μν΅ λ°©μμλ λ©μΈμ§ νμμΌλ‘ πμμ²νκ³ μλ΅
μ νλ€.
HTTP
κ°λ³ ν΅μ μ λͺ¨λλ 립μ
μ΄μ΄μ κ³Όκ±° HTTP ν΅μ κ²°κ³Όλ₯Ό 보쑴νμ§ μλλ° μ΄λμνκ° μμ
κ³Ό κ²κ³Ό κ°μ κ²μ΄λ€.
μμ²
μ 보λ΄λ©΄ λ·νλ¦μ€ μλ²μμ μ΄λ€ μ μ κ° λ‘κ·ΈμΈμ νλμ§μ λν κ³Όκ±°μ μμ²
μ μ μ₯νμ§λ μλλ€.μλ΅
μ λ°μ κ²μ΄λ€.HTTP
κ° λͺ¨λ λ
립
μ΄λΌ κ³Όκ±°μ HTTP ν΅μ μνλ₯Ό μ μ§νμ§ μκΈ°λλ¬Έμ
λ°μνλ νμμ΄λ€.
- λ°λΌμ λ§€ ν΅μ λ§λ€ μ¬μ μ νμν λͺ¨λ μ 보λ₯Ό λ΄μμ μμ²μ 보λ΄μΌνκ³ μ¬κΈ°μ λ§νλ μ 보λ
μΈμ¦/μΈκ³Ό
(EX> λ λ‘κ·ΈμΈνμ΄! λ±)κ°μ μ¬μ μ λ³΄λ‘ μ΄λ₯Ό λ΄μμ μλ²μκ² μ λ¬ν΄μ€λ€
π€·ββοΈ?! 볡μ‘νκ² μ΄λ° κ³Όμ μ λ§€λ² κ±°μΉλ€κ³ ?!
πββοΈ μ§κΈμ μν©μ κ΄κ°μ΄ μΌκ΅¬μ₯μ λλ¬κ° μν©μ λΉμ ν΄λ³΄μ!
μΌκ΅¬μ₯μ μλ²
λΌ λΉμ νλ©΄ μ΄μ©μλ μΌκ΅¬μ₯ μ
ꡬμ λ€μ΄κ° λλ§λ€ νμ μ€ννμκ² ν°μΌ κ²μ¬λ₯Ό λ°μμΌ μΌκ΅¬μ₯μ μ
μ₯ν μ μλ€.
μ¬μ©μκ° μλ²μ λ€μ΄κ° λλ§λ€ μ΄λ¬ν κ²μ¬κ³Όμ μ λ§€λ² κ±°μΉκ³ μ΄λ μΌκ΅¬μ₯μμ λ°μμ μ
μ₯ν μ μλ ν°μΌμ κ°λ
μ μΉ μμμ πν ν°
μ΄λΌκ³ λΆλ₯Έλ€.
πμμ²κ³Ό μλ΅
κ²°κ΅ λͺ¨λ πλ©μΈμ§μ νμ
μ κ°μ§κ³ μλ€.
1> μμ²μ 첫λ²μ§Έ μ€(Start Line)
HTTP method
- μμ²μ΄ μλν μ‘μ (μ΄λ€ μμ²μ ν 건μ§)μ μ μνλ€.Request target
- μλ²μ λλ¬ν΄μΌνλ λ°μ΄ν°μ μμΉ, μ¦ μμ²μ΄ μ μ‘λλ λͺ©ν urlμ μ μ΄μ€λ€.HTTP version
- HTTP λ²μ
- EX>GET/login HTTP/1.1
2> μμ²μ λλ²μ§Έμ€ (Headers), μμ²μ λ©ν λ°μ΄ν°λ₯Ό λ΄λ λΆλΆ
νΈμ€νΈ, User-agent, μμ² νμ , μμ² κΈΈμ΄
λ±μ{key: value}
ννλ‘ λ΄λλ€.3> μμ²μ μ€μ λ΄μ©(Body)
- μμ²μ λ μ§Έ μ€μ Headerλ κ²°κ΅ μ μ§Έ μ€μ Bodyμ λν μμ² μ 보μ΄λ€.
- μ΄ λ©ν λ°μ΄ν°μ μ€μ λ΄μ©μ body λ΄λΆμ λ΄μμ€λ€.
1> Start Line 2>Headers 3>Body
κ° ν¨κ» λ΄κ²¨μλ€.
1> μλ΅μ Start line λμ
Status Line
μ¦ μμ²μ λν΄μ μ΄λ€ μλ΅μ μν(Status)κ° λμλμ§λ₯Ό λ΄μμ€λ€.
HTTP version
Status code
μ μλ΅ μνμ½λλ₯Ό λ΄μμ€λ€,
- EX> 404 μ€ν¨, 200 μ±κ³΅
Status Text
λ μλ΅ μνλ₯Ό κ°λ΅νκ² μ€λͺ νλ ν μ€νΈκ° λ΄κΈ΄λ€
- Not Fonud, Success λ±
Status Text
λ HTTPμ 200μ λ£μΌλ©΄ κ·Έμ λμνλ ν μ€νΈλ₯Ό μλμΌλ‘ 리ν΄ν΄μ€λ€.- μ΄λ¬ν
Status Text
λ©μΈμ§λ μλ²μμ κ°λ°μλ€μ΄ μ μ΄μ 보λ΄μ£Όλ κ²½μ°κ° λ λ§λ€.2>μλ΅μ λ©ν λ°μ΄ν°λ₯Ό λ΄μ λΆλΆ μ λμΌνλ€.
3> μλ΅ν΄μ€ λ°μ΄ν° μμ Bodyμ λ΄κΈ΄λ€. μμ² λ©μλμ λ°λΌμ body λ΄λΆκ° μ‘΄μ¬νμ§ μμ μ μλ€.
λ³΄ν΅ Bodyμ JSON ννλ‘ λ΄κ²¨μ 보λ΄μ§λ€.
μμ²
μ μ²«λ² μ§Έ μ€μλ http λ©μλκ° actinoμ λ€μ΄κ°κ³ μμ£Όμ°λ μ’
λ₯λ λ€μμ 3κ°μ΄λ€.
http Request λ©μλ
λ€μ ν΄λΌμ΄μΈμΈ μΈ‘μμ λ°μλ€μ΄λ μ©μ΄μ κ΄μ μ΄λ€.
.
GET
, λ°μ΄ν°λ₯Ό λ°μμ€κΈ°λ§ν λ μ¬μ©
- ex> μΉνμ΄μ§μ μ μν΄μ νμν λ°μ΄ν°λ₯Ό λΆλ¬μ¬ λ μ¬μ©
- ex> μ₯λ°κ΅¬λμ μνμ λ£κ³ GET λ©μλλ‘ μμ²μ 보λ΄λ©΄ 리νμ€νΈλ₯Ό λ³΄λΈ κ²μ μλ²κ° μ±κ³΅ νΉμ μ€ν¨ νλ€λ λ©μΈμ§λ₯Ό μλ΅μΌλ‘ 보λΈλ€.
POST
, λ°μ΄ν°λ₯Ό λ°μμμ λ°μ΄ν°λ₯Ό μμ± λ° μμ μ ν΄μΌν λ μ¬μ©
μμ²
μ 보λΈλ€
DELETE
, μλ²μ μ μ₯λ νΉμ ν λ°μ΄ν°λ₯Ό μμ ν λ μ¬μ©
- Deleteλ μ₯λ°κ΅¬λμ μμ λ²νΌμ λλ₯΄λ©΄ delete λ©μλλ‘ μμ²μ λ³΄λ΄ μλ²κ° μμ μ λν μνμ λν μλ΅μ 보λ΄μ€λ€.
![]()
- μλ²μμλ ν΄λΌμ΄μΈνΈ μΈ‘μ μμ²μ λν
μλ΅
μ ν΄μ£Όλλ° μ΄λ₯Όstatus code
μ ννλ‘ λ³΄λ΄μ€λ€.
200λ λ²νΈ
μ μ½λλ λμμ΄ μ μνλμμ λstatus code
λ₯Ό 보λ΄μ€λ€.
200
μ GETμ΄ μλμλ€κ³ λ§ν΄μ£Όλ μ½λ201 created
λ DBμμ dataκ° μμ±λμλ€κ³ λ§ν΄μ£Όλ μ½λμ μλ―Έλ₯Ό λ΄ν¬- μ격ν μλ²λ 204λ₯Ό λ³΄ν΅ λ³΄λ΄λ©΄ λ°μ΄ν°κ° μ‘΄μ¬νμ§ μλλ€λ λ©μΈμ§λ₯Ό 보λ΄μ€λ€.
400λ λ²νΈ
λ 무μΈκ° μλ¬κ° λ°μν ν΄λΌμ΄μΈμΈ μΈ‘μ΄ μλͺ»λ μμ²μ λ°μμ λμ 리ν΄ν΄μ£Όλstatus code
μ΄λ€.
- 401, λ‘κ·ΈμΈ μν μ¬λμ΄ μ κ·Όνλ €ν λ,
- 403, λ‘κ·ΈμΈνμ§λ§ κΆνμ΄ μλ μ¬λμ΄ μμ²,
- μ΄λ¬ν μ²λ¦¬λ₯Ό μλ²μμ ifλ¬ΈμΌλ‘ κ²½μ°μ μλ₯Ό κ±Έλ¬
status code
λ₯Ό 보λΈλ€.500λ λ²νΈ
- μλ²μμ μλ¬κ° λ¬μ λμStatus Code
λ‘ μλ² μͺ½μμ500λ λ²νΈ
κ° λμ€μ§ μλλ‘ λͺ¨λ κ²½μ°μ μλ₯Ό λλ μ λ‘μ§μ μ§μ 보λ΄μ€μΌνλ€.
TIPπ‘)
κ°λ°μ λꡬμ λ€νΈμν¬
λ₯Ό μ νμ©ν΄μ μ΄λ€μμ²κ³Ό μλ΅
μ΄ μ£Όκ³ λ°κ³ μλμ§ μ λ³Ό μ€ μμμΌνλ€.κ°λ°μ λꡬμ λ€νΈμν¬
μμλμμ²κ³Ό μλ΅
λ₯Ό ν λ²μ 보μ¬μ€λ€.
- HTTPμ κ°λ κ³Ό μμ² μλ΅μ κ³Όμ μ λν΄μ κ°λ μ μ 리νμ
- Statelssμ νΉμ§μ΄ HTTPμμ μ΄λ»κ² λνλλμ§μ λν΄μ μκ³ μμ
- 리νμ€νΈ λ©μλμ μλ GET, POST, DELETEκ° μ΄λ»κ² μ¬μ©λλ©° μ°¨μ΄κ° 무μμΈμ§λ₯Ό μΈμ§νμ
- μλ²μμ ν΄λΌμ΄μΈνΈ μΈ‘μ μμ²μ μλ΅μ λν΄ λ³΄λ΄μ£Όλ
status code
κ° λ¬΄μμ΄λ©° 200, 400, 500λκ° μ΄λ€ μλ―Έλ₯Ό κ°μ§κ³ μλμ§ κΉμ§
- WeCode κ°μ μ€ λ°±μλ κ³ μ μνλ κ°μ μ€:>