"HTTP Status Codes"λ ν΄λΌμ΄μΈνΈκ° μλ²λ‘ λ³΄λΈ μμ²μ λν "μλ΅"μ λνλ΄λλ° μ¬μ©νλ€.
κ° μ½λλ€μ "νΉμ ν μλ―Έ"λ₯Ό κ°μ§κ³ μκ³ ,
Status μ½λλ€μ "3κ°μ§μ μ«μ"λ‘ μ΄λ£¨μ΄μ ΈμμΌλ©°,
"μμ리 μ«μ"μ λ°λΌ 5κ°μ ν΄λμ€λ‘ λλμ΄μ§λ€.
# Status Codes : 100~199 Informational (μ 보 μλ΅)
# μ ν΄λμ€λ μλ²κ° μμ²μ λ°μκ³ ,
# μλ²μ μ°κ²°λ ν΄λΌμ΄μΈνΈλ κ³μμ μΌλ‘ μμ
μ μ§ννλΌλ μλ―Έμ΄λ€.
1) 100 continue
ν΄λΌμ΄μΈνΈλ μμ²μ κ³μν΄μΌ νλ€. μ΄ μμ μλ΅μ ν΄λΌμ΄μΈνΈμμ λ³΄λΈ μμ²μ μ΄κΈ° λΆλΆμ΄ μμ λμμΌλ©°, νμ¬ μλ²μμ κ±°λΆλμ§ μμμμ λνλ΄λλ° μ¬μ©νλ€.
κ·Έλ κΈ°μ ν΄λΌμ΄μΈνΈλ λ¨μ μμ²μ¬νμ κ³μν΄μ μ§νν΄μΌ νκ³ , μ΄λ―Έ λͺ¨λ μμ²μ¬νμ΄ μλ£λ κ²½μ°μλ μ΄ μλ΅μ 무μνλ€.
2) 101 Switching Protocol (μλ²κ° μ νλλ νλ‘ν μ½)
1. μλ²λ
2. μ
κ·Έλ μ΄λ λ©μμ§ ν€λλ₯Ό ν΅ν΄μ
3. μ΄ μ°κ²°μμ μ¬μ©λλ μ΄ν리μΌμ΄μ
νλ‘ν μ½μ λ³κ²½μ λν ν΄λΌμ΄μΈνΈμ μμ²μ μ΄ν΄νκ³ λ°λ₯Έλ€.
μλ²λ 101 μλ΅μ μ’
λ£νλ λΉμ€μ λ°λ‘ λ€μμ,
μλ΅μ μ
κ·Έλ μ΄λ ν€λνλμ μ μλ νλ‘ν μ½λ‘ νλ‘ν μ½μ μ ννλ€.
νλ‘ν μ½μ μ νμν€λ λΆλΆμμ μ ννλκ²μ΄ μ 리ν κ²½μ°μΌ λ μ νμμΌμΌ ν©λλ€.
ν΄λΉ μ½λλ WebSocket νλ‘ν μ½ μ νμμ μ¬μ©λ©λλ€.
3) 102 Processing(WebDAV) (μ²λ¦¬)
μ΄ μ½λλ μλ²κ° μμ²μ μμ νμ¬ μ²λ¦¬μ€μ μμΌλ, μμ§ μ¬μ©ν μ μλ μλ΅μ΄ μλ€λ κ²μ μλ €μ£Όλ μ½λμ λλ€.
4) 103 Early Hints
μ΄ μνμ½λλ μ£Όλ‘ ν€λμ ν¨κ» μ¬μ©λ©λλ€.
μλ²κ° μλ΅μ μ€λΉνλ λμ link μ¬μ©μ μμ΄μ νΈκ° 리μμ€ μ¬μ λ‘λλ₯Ό μμν μ μλλ‘ ν΄μ€λλ€.
# Status Codes : 200~299 Successful responses (μ±κ³΅μ μΈ μλ΅)
# μ ν΄λμ€λ ν΄λΌμ΄μΈνΈμ μμ²μ΄ μ±κ³΅μ μΌλ‘ μμ , μ΄ν΄, μλ½ λμμμ λνλ΄μ€λλ€.
1) 200 OK (μ±κ³΅)
μμ²μ΄ "μ±κ³΅" νμμ λνλ.
"μ±κ³΅" μ κ° HTTP λ©μλμ λ°λΌμ λ€λ₯Έ μλ―Έλ₯Ό κ°μ§λλ€.
- GET : 리μμ€λ₯Ό κ°μ Έμ λ³Έλ¬Έμ μ μ‘μ μλ£νλ€.
- HEAD : μλ΅μ ν€λκ° ν¬ν¨λλ€.
- POST || PUT : μ‘°μΉ κ²°κ³Όκ° λ΄κΈ΄ 리μμ€κ° λ³Έλ¬Έμ μ μ‘λλ€.
- TRACE : μλ²μμ λ°μ μμ² λ©μμ§κ° ν¬ν¨λλ€.
2) 201 Created (μμ±)
μμ²μ΄ μ±κ³΅νκ³ κ·Έμ λ°λ₯Έ κ²°κ³Όλ‘ μλ‘μ΄ λ¦¬μμ€κ° μμ±λ©λλ€.
μ μλ΅μ μΌλ°μ μΌλ‘ POST μμ² λλ, μΌλΆ PUT μμ² νμ μ μ‘λλ μλ΅μ
λλ€.
3) 202 Accepted (μλ½)
μ²λ¦¬λ₯Ό μν μμ²μ μλ½λμμ§λ§, μμ§ μ²λ¦¬κ° λμ§ μμ μν.
μ μλ΅μ λͺ©μ μ, μ²λ¦¬κ° μλ£λ λκΉμ§ μλ²μ λν μ¬μ©μμ μ°κ²°μ μ§μν νμ μμ΄, μλ²κ° μΌλΆ λ€λ₯Έ νλ‘μΈμ€μ λν μμ²μ μλ½ν μ μκ² νκΈ° μν¨μ΄λΌκ³ νλ€.
κ²°κ³Όμ μΌλ‘ μ μλ΅μ μμ²ν μ²λ¦¬κ° μ²λ¦¬λ μλ μκ³ , μλμλ μμΌλ©°, μ΄λ° λΉλκΈ°μ μΈ μμ μμ λ€μ λ°νν μ μλ HTTP μν μ½λκ° μκΈ° λλ¬Έμ, μ 202 μλ΅μ μλμ μΌλ‘ 컀λ°λμ§ μμ΅λλ€.
4) 203 Non-Authoritative Information (μ λ’°ν μ μλ μ 보)
μ μλ΅μ, λ°νλ λ°μ΄ν°κ° μλ³Έ μλ²μ μ¬μ©κ°λ₯ν λ°μ΄ν°μλ μ νν μΌμΉνμ§ μκ³ , λ‘컬 λλ νμ¬ λ³΅μ¬λ³Έμμ μμ§λμμμ μλ―Ένλ€.
μ£Όλ‘ λ€λ₯Έ 리μμ€μ λ°±μ
μ μ¬μ©λλ€.
μ΄ μλ΅μ μ¬μ©μ΄ νμκ° μλλ©°, μνκ° 200μΌ κ²½μ°μλ§ μ¬μ©μ΄ μ ν©νλ€.
5) 204 No Content (μ½ν μΈ μμ)
μ΄ μλ΅μ μμ²μ΄ μ±κ³΅μ μΌλ‘ μ²λ¦¬λμμΌλ, λν΄ λ³΄λ΄μ€ 컨ν μΈ κ° μμ§λ§, ν€λμ λ΄μ©μ΄ μ μ©ν μ μλ€.
μ¬μ©μλ μ΄ ν€λμ λ΄μ©μ λ°νμΌλ‘ μλ‘μ΄ ν€λλ‘ μ λ°μ΄νΈ ν μ μλ€.
6) 205 Reset Content (λ΄μ© μ¬μ€μ )
μ΄ μλ΅μ, ν΄λΉ μμ²μ λ³΄λΈ λ¬Έμλ₯Ό μ¬μ€μ νλΌκ³ μ¬μ©μμκ² μλ €μ£Όλ μ½λμ λλ€.
μλ΅μλ Entity(κ°μ²΄)κ° λ¬΄μ‘°κ±΄ ν¬ν¨λλ©΄ μλ©λλ€.
7) 206 Partial Content (νΉμ λΆλΆ)
μλ²λ 리μμ€μ λν΄ λΆλΆμ μΈ GETμμ²μ μ΄ννμ΅λλ€.
μμ²μ μνλ λ²μλ₯Ό λνλ΄λ Range ν€λλ₯Ό ν¬ν¨ν΄μΌ ν©λλ€.
μμ²μ 쑰건λΆλ‘ λ§λ€κΈ° μν If-Range ν€λκ° ν¬ν¨λ μλ μμ΅λλ€.
8) 207 Multi-Status (WebDAV)
μ΄ μλ΅μ, μ¬λ¬ 리μμ€μ λν μμ²μ΄ μ²λ¦¬λμκ³ , κ° λ¦¬μμ€μ λν μΈλΆμ μΈ μν μ 보λ₯Ό μλ΅μΌλ‘ μ λ¬νλλ° μ¬μ©ν©λλ€.
μ£Όλ‘ WebDAV νλ‘ν μ½κ³Ό κ΄λ ¨λ μμ²μ μ¬μ©λ©λλ€.
9) 208 Already Reported (WebDAV)
207κ³Ό μ μ¬νκ² μ¬λ¬ 리μμ€μ λν μνλ₯Ό λνλ΄λ μλ΅μ΄μ§λ§, λ³΄λ€ κ΅¬μ²΄μ μΈ μλ―Έλ₯Ό μ λ¬νλ€.
μ£Όλ‘ WebDAV νλ‘ν μ½κ³Ό κ΄λ ¨λ μμ²μ μ¬μ©λ©λλ€.
10) 226 IM Used (WebDAV)
WebDAVμ λ λ€λ₯Έ μλ΅μ½λμΈ 200 OK μ ꡬλ³νκΈ° μν΄μ λμ
λμλ€.
μ£Όλ‘ WebDAV νλ‘ν μ½κ³Ό κ΄λ ¨λ μμ²μ μ¬μ©λ©λλ€.
WebDAVμμ μ΄λ―Έ μ§μ μμ²μμ μ¬μ©ν μΈμ€ν΄μ€λ₯Ό μ¬μ¬μ©νκ³ μμμ μλ €μ€ λ μ¬μ©νλ μλ΅μ½λ μ΄λ€.
# Status Codes : 300~399 Redirection Message (λ€μ μ§μ)
# μ ν΄λμ€λ μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ μλ£νκΈ° μν΄ μΆκ°λμμ μ·¨ν΄μΌ ν¨μ μλ―Ένλ€.
1) 300 Multiple Choice (λ€μν μ νμ§ μ€ μ ν)
μ΄ μλ΅μ, ν΄λΌμ΄μΈνΈκ° μμ²ν 리μμ€κ° ν κ°κ° μλ μ¬λ¬κ°μμ λνλ΄κ³ , μ¬μ©μκ° μ΄ μ€μμ ν κ°μ§λ₯Ό μ νν΄μΌ ν¨μ λνλ΄μ€λλ€.
μΉλΈλΌμ°μ μμ μμ£Ό μ¬μ©λμ§λ μλλ€κ³ ν©λλ€.
μ κ°μ κ²½μ°, μλ²λ μ¬μ©μμκ² μ ν κ°λ₯ν 리μ€νΈλ₯Ό ν¬ν¨νμ¬ μλ΅μ 보λ
λλ€.
κ·Έλ λ€λ©΄, μ¬μ©μλ 리μ€νΈλ₯Ό νμΈνκ³ , μνλ 리μμ€λ₯Ό μ νν΄μ μλ²μ μ¬μμ² ν μ μμ΅λλ€.
μλ‘ "λ€κ΅μ΄"κ° μμ΅λλ€.
λ€κ΅μ΄ 리μ€νΈμμ μ¬μ©μκ° μνλ μΈμ΄λ‘ μ¬μμ²μ΄ κ°λ₯ν©λλ€.
2) 301 Moved Permanently (μꡬμ μ΄λ)
ν΄λΌμ΄μΈνΈκ° μμ²ν 리μμ€κ° μꡬμ μΌλ‘ μλ‘μ΄ μμΉμ μ΄λνμμ λνλ΄μ£Όλ μλ΅μ΄λ€.
μΉλΈλΌμ°μ μμ μμ£Ό μ¬μ©λλ μ½λ μ€ νλ.
μ μλ΅μ μΌλ°μ μΌλ‘ 리μμ€μ ν΄λΉνλ URLμ΄ λ³κ²½λμκ³ ,
μλ‘μ΄ URLμ ν΅ν΄μ 리μμ€μ μ κ·Όν΄μΌ ν λ μλ €μ£Όλ μ½λμ
λλ€.
μ¬κΈ°μ μλ΅μ λ³Έλ¬Έμλ μλ‘μ΄ URLμ΄ ν¬ν¨λμ΄μΌ ν©λλ€.
3) 302 Found (μΌμμ μ΄λ)
μΉλΈλΌμ°μ μμ μμ£Ό μ¬μ©λλ μ½λ μ€ νλ.
리μμ€μ URLμ΄ μΌμμ μΌλ‘ λ³κ²½λ κ²½μ°μ μ¬μ©λ©λλ€.
μΌμμ μΌλ‘ λ³κ²½λ URLμ μλ΅ λ³Έλ¬Έμ ν¬ν¨μμΌ μ¬μ©μμκ² μλ €μ€μΌ ν©λλ€.
301κ³Όλ μ°¨μ΄κ° μμ΅λλ€.
4) 303 See Other (μμ²ν 리μμ€κ° λ€λ₯Έ μμΉλ‘ μ΄λ)
μΉλΈλΌμ°μ μμ μμ£Ό μ¬μ©λλ μ½λ μ€ νλ.
μ μλ΅μ μ£Όλ‘ POSTμ κ°μ΄ ν΄λΌμ΄μΈνΈκ° 리μμ€λ₯Ό μμ±νκ±°λ μμ ν νμ ν΄λΉ 리μμ€λ₯Ό νμΈνκΈ° μν΄μ Redirection ν λ μ¬μ©νλ€.
μλ²λ μλ΅ λ³Έλ¬Έμ ν΄λΉ μμΉμ λν URLμ ν¬ν¨ν΄μΌ νλ©°, ν΄λΌμ΄μΈνΈλ GETμμ²μ ν΅ν΄ 리μμ€λ₯Ό νμΈν μ μλ€.
5) 304 Not Modified (μμ λμ§ μμ)
ν΄λΌμ΄μΈνΈμ cachκ° μ΅μ λ²μ μ 리μμ€λ₯Ό κ°μ§κ³ μμ΄μ μμ λμ§ μμμ μλ΅μΌλ‘μ¨ λνλ΄μ€λ€.
6) 307 Temporary Redirect
302 Found μλ΅κ³Ό κ°μ μλ―Έλ₯Ό κ°μ§κ³ μμΌλ, μ΄μ μ μ¬μ©λ HTTP λ©μλκ° λ€μ μμ²μμλ λ³νλ©΄ μλλ€λ μ μ΄ λ€λ₯΄λ€.
첫 λ²μ§Έ μμ²μμ POST λ©μλλ₯Ό μ¬μ©νμλ€λ©΄, λ λ²μ§Έ μμ²μμλ POST λ©μλλ₯Ό μ¬μ©ν΄μΌ νλ€.
7) 308 Permanent Redirect
301 Moved Permanently μλ΅κ³Ό κ°μ μλ―Έλ₯Ό κ°μ§κ³ μμΌλ, μ΄μ μ μ¬μ©λ HTTP λ©μλκ° λ€μ μμ²μμλ λ³νλ©΄ μλλ€λ μ μ΄ λ€λ₯΄λ€.
첫 λ²μ§Έ μμ²μμ POST λ©μλλ₯Ό μ¬μ©νμλ€λ©΄, λ λ²μ§Έ μμ²μμλ POST λ©μλλ₯Ό μ¬μ©ν΄μΌ νλ€.
# Status Codes : 400~499 Client Error Responses (ν΄λΌμ΄μΈνΈ μ€λ₯ μλ΅)
# ν΄λΌμ΄μΈνΈμ μμ²μ΄ μλͺ»λμκ±°λ, μλ²κ° μμ²μ μ΄ν΄νμ§ λͺ»νμμ λνλ λλ€.
1) 400 Bad Request (μλͺ»λ μμ²)
ν΄λΌμ΄μΈνΈμ μμ²μ΄ μλ²μ μ λ¬λ "μμ "μ μ ν¨νμ§ μμ κ²½μ° μ¬μ©νλ€.
ν΄λΌμ΄μΈνΈκ° ꡬ문μ μμ±νκ±°λ, νμν λ°μ΄ν°λ₯Ό μμ²μ ν¬ν¨μν€μ§ μμμ λ λ°μν μ μλ€.
μλ‘ ν΄λΌμ΄μΈνΈκ° μλ²μκ² μλͺ»λ λ°μ΄ν° νμμΌλ‘ μμ²μ 보λ΄κ±°λ νμμ μΈ νλΌλ―Έν°λ₯Ό λλ½ν κ²½μ° 400 Bad Request μν μ½λκ° λ°νλ μ μμ΅λλ€. λν μλ²κ° μμ²μ μ¬λ°λ₯΄κ² μ²λ¦¬ν μ μλ κ²½μ°μλ μ΄ μν μ½λκ° μ¬μ©λ μ μμ΅λλ€.
2) 401 Unauthorized (μΈμ¦λμ§ μμ μμ²)
μΈμ¦λμ§ μμ μμ²μμ λνλ λλ€.
μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ μ΄ν΄νμ§λ§, μμ²λ 리μμ€μ λν μ κ·Ό κΆνμ΄ μλ κ²½μ°μ μ¬μ©λ©λλ€.
ν΄λΌμ΄μΈνΈκ° μμ²μ λ³΄λΈ κ²½μ°, μλ²λ ν΄λΌμ΄μΈνΈμκ² μΈμ¦μ΄ νμνλ€λ λ©μμ§λ₯Ό ν¨κ» μλ΅μΌλ‘ 보λ
λλ€.
ν΄λΌμ΄μΈνΈλ μ΄ν μΈμ¦ μ 보λ₯Ό μ 곡νμ¬ μ κ·Ό κΆνμ μ»μ΄μΌ ν©λλ€.
3) 402 Payment Required (μλ²μ μμ²ν 리μμ€μ μ κ·Όμ κ²°μ νμ)
λμ§νΈ κ²°μ μμ€ν μ μ¬μ©νκΈ° μν λͺ©μ μΌλ‘ λ§λ€μ΄μ‘μΌλ, νμ¬λ μ¬μ©λκ³ μμ§λ μμ΅λλ€.
4) 403 Forbidden (μ κ·Ό κΆν μμ)
μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ μ΄ν΄νμ§λ§, ν΄λΌμ΄μΈνΈμ μΈμ¦ μ 보λ κΆνμ΄ μ ν¨νμ§ μμμ μμ²λ 리μμ€μ μ κ·Όμ κ±°λΆν κ²½μ°μ μ¬μ©λ©λλ€.
λν, ν΄λΌμ΄μΈνΈμ μΈμ¦ μ λ³΄κ° μ ν¨νμ§ μκ±°λ λ§λ£λμμ λμλ μ΄λ¬ν μν μ½λκ° μ¬μ©λ μ μμ΅λλ€.
μλ‘, κΈ°λ₯ꡬνμ ν ν°μ΄ μλ€.
5) 404 Not Found (μμ²ν 리μμ€λ₯Ό μ°Ύμ μ μμ)
μμ²ν 리μμ€λ₯Ό μλ²μμ μ°Ύμ μ μμμ λνλ΄ μ€λλ€.
ν΄λΌμ΄μΈνΈκ° μμ²ν URLμ΄ μλ²μμ μΈμλμ§ μλ κ²½μ°μ μ¬μ©λ©λλ€.
μ¦, μ€νλ μλͺ»λ URLμ μ¬μ©νμ¬ μμ²νμ λλ, μμ λ 리μμ€λ₯Ό μμ²νμ λ, λλ μ‘΄μ¬νμ§ μλ νμ΄μ§λ₯Ό μμ²νμ λ λ±μ λ°μν μ μμ΅λλ€.
6) 405 Method Not Allowed (μμ²ν HTTP λ©μλ νμ© λΆκ°)
ν΄λΌμ΄μΈνΈκ° μ¬μ©ν HTTP λ©μλλ μλ²μμ μ§μνμ§ μλ λ©μλλΌλ κ²μ λνλ λλ€.
μλ‘, μλ²μμ νΉμ URLμ λν΄ GET μμ²λ§ νμ©λλλ‘ μ€μ ν κ²½μ°μλ,
ν΄λΌμ΄μΈνΈκ° ν΄λΉ URLμ POST μμ²μ 보λ΄λ©΄ 405 Method Not Allowed μν μ½λκ° λ°νλ μ μλ€.
μ΄λ μλ²μμ ν΄λΉ 리μμ€μ λν΄ POST λ©μλλ₯Ό μ§μνμ§ μκΈ° λλ¬Έμ΄λ€.
7) 406 Not Acceptable (νμ©λμ§ μμ λ―Έλμ΄νμ )
ν΄λΌμ΄μΈνΈκ° μμ²ν 리μμ€μ λν΄ μλ²κ° νμ©νμ§ μλ λ―Έλμ΄ νμ
μ μμ²νμ λ μ¬μ©λλ μν μ½λμ
λλ€.
ν΄λΌμ΄μΈνΈκ° Accept ν€λλ₯Ό ν΅ν΄ μ§μνμ§ μλ λ―Έλμ΄ νμ
μ μμ²νκ±°λ,
μλ²κ° μμ²λ λ―Έλμ΄ νμ
μ μ 곡ν μ μλ κ²½μ°μ λ°νν©λλ€.
μλ‘, ν΄λΌμ΄μΈνΈκ° JSON νμμ λ°μ΄ν°λ₯Ό μμ²νμ§λ§ μλ²μμλ JSONμ μ§μνμ§ μκ³ XML νμμ λ°μ΄ν°λ§ μ 곡νλ κ²½μ°μλ
406 Not Acceptable μν μ½λκ° λ°νλ μ μμ΅λλ€.
λλ ν΄λΌμ΄μΈνΈκ° νΉμ μΈμ½λ©μ μμ²νλλ° μλ²μμ κ·Έ μΈμ½λ©μ μ§μνμ§ μλ κ²½μ°μλ μ΄λ¬ν μν μ½λκ° λ°μν μ μμ΅λλ€.
8) 407 Proxy Authentication Required (Proxy μλ² μΈμ¦)
401κ³Ό μ μ¬ν μλ―Έλ₯Ό κ°μ§μ§λ§, νλ‘μμ μν μΈμ¦μ΄ νμν¨μ λνλΈλ€.
ν΄λΌμ΄μΈνΈκ° νλ‘μ μλ²λ₯Ό ν΅ν΄ μμ²μ 보λ΄κΈ° μν΄μλ μΈμ¦μ΄ νμνλ€λ κ²μ λνλ΄λ μν μ½λμ
λλ€.
μ¦, ν΄λΌμ΄μΈνΈκ° νλ‘μ μλ²μμ μꡬνλ μΈμ¦ μ 보λ₯Ό μ 곡ν΄μΌ μ격 μλ²μμ ν΅μ μ μ΄λ£° μ μμ΅λλ€.
9) 408 Request Timeout (μκ° μ§μ°)
μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ μννκΈ°κΉμ§μ μκ°μ΄ μ§λμ μμ²μ μ²λ¦¬νμ§ λͺ»νμ λ μ¬μ©λλ HTTP μν μ½λμ
λλ€.
ν΄λΌμ΄μΈνΈκ° μμ²μ 보λμ§λ§, μλ²κ° μΌμ μκ° λ΄μ μμ²μ μ²λ¦¬νμ§ λͺ»ν κ²½μ°μ λ°μν©λλ€.
ν΄λΌμ΄μΈνΈλ μμ²μ΄ μκ° μ΄κ³Όλμμμ μΈμνκ³ , λ€μ μμ²μ μλνκ±°λ, λ€νΈμν¬ μνλ₯Ό νμΈνμ¬ λ¬Έμ λ₯Ό ν΄κ²°ν΄μΌ ν©λλ€.
10) 409 Conflict (μΆ©λ)
μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ μ²λ¦¬ν μ μλ κ²½μ°μ μ¬μ©λλ μν μ½λμ
λλ€.
ν΄λΌμ΄μΈνΈμ μμ²μ΄ νμ¬ μλ²μ μνμ μΆ©λμ΄ λ°μνμ¬ μμ²μ μ±κ³΅μ μΌλ‘ μνν μ μμμ λνλ
λλ€.
μ μ½λλ μ£Όλ‘ λ€μκ³Ό κ°μ μν©μμ μ¬μ©λ μ μμ΅λλ€.
- λμμ± μΆ©λ: μ¬λ¬ ν΄λΌμ΄μΈνΈκ° λμμ κ°μ 리μμ€λ₯Ό μμ νλ €κ³ ν λ, μλ²λ μ΄λ₯Ό μ²λ¦¬νλ λ° μΆ©λμ΄ λ°μν μ μμ΅λλ€.
μλ₯Ό λ€μ΄, λ ν΄λΌμ΄μΈνΈκ° κ°μ λ°μ΄ν°λ₯Ό μμ νλ €κ³ ν λ κ°κ°μ λ³κ²½ μ¬νμ΄ μλ‘ μΆ©λνμ¬ μλ²κ° μνλ₯Ό κ²°μ ν μ μλ κ²½μ°μ μ μ½λκ° λ°νλ μ μμ΅λλ€. - 리μμ€ μν μΆ©λ: ν΄λΌμ΄μΈνΈκ° 리μμ€λ₯Ό μμ±νλ €κ³ ν λ μ΄λ―Έ ν΄λΉ 리μμ€κ° μ‘΄μ¬νλ κ²½μ°,
μλ²λ μλ‘μ΄ λ¦¬μμ€λ₯Ό μμ±νλ λμ κΈ°μ‘΄ 리μμ€λ₯Ό μμ νκ±°λ λ€λ₯Έ λ°©λ²μΌλ‘ μΆ©λμ μ²λ¦¬ν΄μΌ ν©λλ€. - λ°μ΄ν° μ ν¨μ± μΆ©λ: ν΄λΌμ΄μΈνΈκ° μ ν¨νμ§ μμ λ°μ΄ν°λ₯Ό μλ²μ μ λ¬νλ©΄,
μλ²λ μ΄λ¬ν λ°μ΄ν°λ‘ μΈν΄ μμ²μ μ²λ¦¬ν μ μλ μνκ° λλ κ²½μ°κ° λ°μν μ μμ΅λλ€.
11) 410 Gone (μ‘΄μ¬νμΌλ, νμ¬λ μμ λ 리μμ€)
ν΄λΌμ΄μΈνΈκ° μμ²ν 리μμ€κ° μꡬμ μΌλ‘ μμ λμ΄ λ μ΄μ μ¬μ©ν μ μμμ λνλ΄λ HTTP μν μ½λμ
λλ€.
ν΄λΉ 리μμ€κ° μμ λμ΄ λ μ΄μ μ¬μ©ν μ μλ€λ κ²μ ν΄λΌμ΄μΈνΈμκ² μλ €μ£ΌκΈ° μν΄ μ¬μ©λ©λλ€.
ν΄λΌμ΄μΈνΈλ μꡬμ μΌλ‘ μμ λ 리μμ€λ₯Ό λ μ΄μ μ¬μ©νμ§ μκ³ , λ€λ₯Έ μ ν¨ν 리μμ€λ₯Ό μ°Ύμ μ¬μ©ν΄μΌ ν©λλ€.
12) 411 Length Required (POSTμμ² μ νΉμ ν€λλ₯Ό ν¬ν¨νμ§ μμ κ²½μ°)
ν΄λΌμ΄μΈνΈκ° POST μμ²μ λ³΄λΌ λ Content-Length ν€λλ₯Ό ν¬ν¨νμ§ μμ κ²½μ°μ λ°μνλ μν μ½λμ
λλ€.
μ΄ μν μ½λλ μλ²κ° μμ²μ λ°λ ν¬κΈ°λ₯Ό μ μ μμ΄ μμ²μ μ²λ¦¬ν μ μμμ λνλ
λλ€.
13) 412 Precondition Failed (μ μ 쑰건 λΆμΌμΉ)
μ μ½λλ μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ μ²λ¦¬νκΈ° μ μ μμ²μ μ§μ λ μ¬μ 쑰건(precondition)μ΄ μΆ©μ‘±λμ§ μμμ λ μ¬μ©λλ μν μ½λμ
λλ€.
μ¦, ν΄λΌμ΄μΈνΈκ° νΉμ 쑰건μ μΆ©μ‘±μν€μ§ μμ μνμμ μμ²μ λ³΄λΈ κ²½μ°μ μ΄ μν μ½λκ° λ°νλ©λλ€.
μμ μ¬μ 쑰건μ μ£Όλ‘ μμ²μ λν μ‘°κ±΄λΆ μμ²(Conditional Request)μμ μ¬μ©λ©λλ€.
μ‘°κ±΄λΆ μμ²μ ν΄λΌμ΄μΈνΈκ° μλ²μ 리μμ€λ₯Ό μμ²ν λ, ν΄λΉ 리μμ€μ μνλ μκ°κ³Ό κ΄λ ¨λ 쑰건μ ν¨κ» μ λ¬νμ¬,
νΉμ μ‘°κ±΄μ΄ μΆ©μ‘±λμ§ μμΌλ©΄ μμ²μ κ±°μ νλλ‘ νλ λ©μ»€λμ¦μ
λλ€.
14) 413 Paylord Too Large (μμ² ν¬κΈ° μ΄κ³Ό)
ν΄λΌμ΄μΈνΈκ° μλ²λ‘ 보λ΄λ μμ²μ ν¬κΈ°κ° μλ²κ° μ²λ¦¬ν μ μλ μ΅λ ν¬κΈ°λ₯Ό μ΄κ³Όνμ λ μ¬μ©λλ μν μ½λμ λλ€. μ¦, ν΄λΌμ΄μΈνΈκ° μμ²μ λ³Έλ¬Έ(payload) ν¬κΈ°κ° μλ²μ μ νμ μ΄κ³Όνμ¬ μμ²μ μ²λ¦¬ν μ μμ λ μ΄ μν μ½λκ° λ°νλ©λλ€.
15) 414 URI Too Long (URI νμ©κΈΈμ΄ μ΄κ³Ό)
ν΄λΌμ΄μΈνΈκ° μλ²λ‘ 보λ΄λ μμ²μ URI(Uniform Resource Identifier)κ° μλ²κ° μ²λ¦¬ν μ μλ μ΅λ κΈΈμ΄λ₯Ό μ΄κ³Όνμ λ μ¬μ©λλ μν μ½λμ
λλ€.
ν΄λΌμ΄μΈνΈκ° μμ²μ URIκ° μλ²κ° μ²λ¦¬ν μ μλ μ ν κΈΈμ΄λ₯Ό μ΄κ³Όνμ¬ μμ²μ μ²λ¦¬ν μ μμ λ μ΄ μν μ½λκ° λ°νλ©λλ€.
16) 415 Unsupported Media Type (μ§μλμ§ μλ λ―Έλμ΄ νμ )
μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ ν¬ν¨λ λ―Έλμ΄ νμ
μ μ§μνμ§ μμ λ μ¬μ©λλ μν μ½λμ
λλ€.
ν΄λΌμ΄μΈνΈκ° μμ²μ λ³Έλ¬Έμ μ§μλμ§ μλ λ―Έλμ΄ νμ
μ ν¬ν¨νμ¬ μλ²μ μμ²μ λ³΄λΈ κ²½μ°μ μ΄ μν μ½λκ° λ°νλ©λλ€.
17) 416 Requested Range Not Satisfiable (μ§μ λ²μ λ°μ μ€λ₯)
ν΄λΌμ΄μΈνΈκ° μλ²λ‘ λ³΄λΈ μμ²μ μ§μ λ λ²μ(range)κ° λ§μ‘±λμ§ μμ λ μ¬μ©λλ μν μ½λμ
λλ€.
ν΄λΌμ΄μΈνΈκ° μμ²μ Range ν€λλ₯Ό ν¬ν¨νμ¬ νΉμ λ²μμ 리μμ€λ₯Ό μμ²νμ§λ§,
ν΄λΉ λ²μκ° μλ²κ° κ°μ§κ³ μλ 리μμ€μ μ ν¨ λ²μλ₯Ό λ²μ΄λ κ²½μ°μ μ΄ μν μ½λκ° λ°νλ©λλ€.
18) 417 Expectation Failed (Expext μμ² μλ¬)
ν΄λΌμ΄μΈνΈκ° μλ²μ κΈ°λ(expectation)λ₯Ό μ§μ νμ§λ§, μλ²κ° μ΄λ¬ν κΈ°λλ₯Ό λ§μ‘±μν¬ μ μμ λ μ¬μ©λλ μν μ½λμ λλ€. μ΄λ¬ν κΈ°λλ Expect ν€λλ₯Ό μ¬μ©νμ¬ μμ² λ©μμ§μ ν¬ν¨λ©λλ€.
19) 418 I'm a teapot (???)
dμ₯λμ€λ½κ² λ§λ€μ΄μ§ μν μ½λλ‘, μ€μ λ‘λ HTTP νμ€μμ μ¬μ©λμ§ μμ΅λλ€.
μ μ½λλ 1998λ
4μμ λ§λ€μ΄μ§ "Hyper Text Coffee Pot Control Protocol (HTCPCP)"λΌλ μ₯λ μ€νμμ λΉλ‘―λμμ΅λλ€.
20) 421 Misdirected Request (μλ΅μμ± λΆκ°λ₯)
HTTP/2 νλ‘ν μ½μμ ν΄λΌμ΄μΈνΈμ μμ²μ΄ μλ²μ μλͺ» μ μ‘λμμ λ μ¬μ©λλ μν μ½λμ
λλ€.
ν΄λΌμ΄μΈνΈλ μ¬λ°λ₯Έ μλ²μ μμ²μ λ€μ μλν΄μΌ ν©λλ€.
μλ²λ μ΄λ¬ν λ¬Έμ λ₯Ό ν΄λΌμ΄μΈνΈμκ² μ리기 μν΄ 421 Misdirected Request μν μ½λλ₯Ό λ°νν©λλ€.
21) 429 Too Many Requests (λ무 λ§μ μμ²)
ν΄λΌμ΄μΈνΈκ° νΉμ μκ° λμ λ무 λ§μ μμ²μ 보λμ λ μ¬μ©λλ μν μ½λμ
λλ€.
μ μ½λλ μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ μ ννκ³ μμμ μ리λλ° μ¬μ©λ©λλ€.
# Status Codes : 500~599 Server Error Responses (μλ² μ€λ₯ μλ΅)
# μλ²κ° μ ν¨ν μμ²μ μννμ§ λͺ»νμμ λνλ΄λ ν΄λμ€μ΄λ€.
1) 500 Internal Server Error (λ΄λΆ μ€λ₯)
μλ²μμ λ°μν λ΄λΆμ μΈ μ€λ₯λ‘ μΈν΄ μμ²μ μ²λ¦¬ν μ μλ μνμμ λνλ΄λ μν μ½λμ
λλ€.
μ μ½λλ μλ² μΈ‘μμ μκΈ°μΉ μμ λ¬Έμ κ° λ°μνμ¬ μμ²μ μ²λ¦¬νλ λμ μ€λ₯κ° λ°μνμ λ λ°νλ©λλ€.
μ μ½λλ μ£Όλ‘ λ€μκ³Ό κ°μ μν©μμ λ°μν μ μμ΅λλ€.
- μλ² μΈ‘ μ½λ μ€λ₯: μλ²μμ μ²λ¦¬ μ€μ νλ‘κ·Έλ¨μ μΈ μ€λ₯κ° λ°μν κ²½μ°, μμΈκ° λ°μνκ±°λ μ²λ¦¬λμ§ μμ μ€λ₯κ° μμ μ μμ΅λλ€.
- λ°μ΄ν°λ² μ΄μ€ μ€λ₯: μλ²κ° λ°μ΄ν°λ² μ΄μ€μ μνΈ μμ©νλ λμ μ€λ₯κ° λ°μν μ μμ΅λλ€.
- μμ€ν 리μμ€ λΆμ‘±: μλ²μ μμ€ν 리μμ€κ° λΆμ‘±νμ¬ μμ²μ μ²λ¦¬ν μ μλ κ²½μ°κ° μμ΅λλ€.
- μΈλΆ μλΉμ€ μ€λ₯: μλ²κ° μΈλΆ μλΉμ€μ ν΅μ μ€μ μ€λ₯κ° λ°μνλ κ²½μ°κ° μμ΅λλ€.
2) 501 Not Implemented (κΈ°λ₯ μ§μ μ€λ₯)
μμ²λ°μ κΈ°λ₯μ΄ μλ²μμ ꡬνλμ§ μμμμ λνλ΄λ μν μ½λμ
λλ€.
ν΄λΌμ΄μΈνΈκ° μλ²μκ² μμ²ν λμμ΄ μλ²μμ μμ§ κ΅¬νλμ§ μμκ±°λ μ§μλμ§ μλ κ²½μ°μ μ΄ μν μ½λκ° λ°νλ©λλ€.
3) 502 Bad Gateway (μλ΅ λ°μ§ λͺ»ν¨)
κ²μ΄νΈμ¨μ΄λ νλ‘μ μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ μννλ λμ€μ μ ν¨νμ§ μμ μλ΅μ λ°μμ λ μ¬μ©λλ μν μ½λμ λλ€. μ μ½λλ ν΄λΌμ΄μΈνΈκ° μλ²λ‘ λ³΄λΈ μμ²μ λ€λ₯Έ μλ²λ‘ μ λ¬νκΈ° μν΄ κ²μ΄νΈμ¨μ΄λ νλ‘μ μλ²λ₯Ό μ¬μ©νλ κ²½μ°μ νν λ°μν©λλ€.
μμ μν μ½λκ° λ°μν μ μλ μΌλ°μ μΈ μν©μ λ€μκ³Ό κ°μ΅λλ€.
- νλ‘μ μλ²κ° λ€μ΄λκ±°λ μλ΅νμ§ μλ κ²½μ°.
- νλ‘μ μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ μλͺ»λ μλ²λ‘ μ λ¬ν κ²½μ°.
- κ²μ΄νΈμ¨μ΄ μλ²κ° ν΄λΌμ΄μΈνΈμ μμ²μ μ²λ¦¬νλ λμ€μ μλ²μμ μ ν¨νμ§ μμ μλ΅μ λ°μ κ²½μ°.
4) 503 Serviece Unavailable (κ³ΌλΆν λλ μ¬μ©λΆκ°)
μλ²κ° νμ¬ μμ²μ μ²λ¦¬ν μ μλ μνμμ λνλ΄λ μν μ½λμ
λλ€.
μ΄ μν μ½λλ μλ²κ° μΌμμ μΈ κ³ΌλΆν λλ μ μ§ λ³΄μλ‘ μΈν΄ μμ²μ μ²λ¦¬ν μ μλ κ²½μ°μ μμ£Ό μ¬μ©λ©λλ€.
μμ μν μ½λλ λ€μκ³Ό κ°μ μν©μμ λ°μν μ μμ΅λλ€.
- μλ² κ³ΌλΆν: μλ²μ λ무 λ§μ μμ²μ΄ λμμ λ°μνμ¬ μλ²κ° μ²λ¦¬ν μ μλ μνμ λλ€.
- μ μ§ λ³΄μ: μλ²κ° μΌμμ μΌλ‘ μ μ§ λ³΄μ μμ μ μ§ννμ¬ μμ²μ μ²λ¦¬ν μ μλ μνμ λλ€.
- μλΉμ€ μ₯μ : μλ²μ μλΉμ€κ° μΌμμ μΌλ‘ μ€λ¨λμκ±°λ λ€μ΄λμ΄ μμ²μ μ²λ¦¬ν μ μλ μνμ λλ€.
5) 504 Gateway Timeout (μλ΅ μκ° μ΄κ³Ό)
ν΄λΌμ΄μΈνΈκ° μλ²λ‘ μμ²μ 보λμ§λ§,
κ²μ΄νΈμ¨μ΄ μλ²κ° μΌμ μκ° λ΄μ μλ΅μ λ°μ§ λͺ»ν΄ μμ²μ΄ μκ° μ΄κ³Όλ μνμμ λνλ΄λ μν μ½λμ
λλ€.
μ μ½λλ μ£Όλ‘ λ€μκ³Ό κ°μ μν©μμ λ°μν μ μμ΅λλ€.
- κ²μ΄νΈμ¨μ΄ μλ²κ° μλ΅νμ§ μλ κ²½μ°.
- κ²μ΄νΈμ¨μ΄ μλ²κ° μμ²μ μ²λ¦¬νλ λμ€μ μκ°μ΄ μ€λ 걸리λ κ²½μ°.
- κ²μ΄νΈμ¨μ΄ μλ²κ° μμ²μ λ€λ₯Έ μλ²λ‘ μ λ¬νκ³ , κ·Έ μλ²κ° μλ΅νμ§ μλ κ²½μ°.
6) 508 Loop Detected (무ν 루ν)
ν΄λΌμ΄μΈνΈκ° μλ²μκ² λ³΄λΈ μμ²μμ 루ν(Loop)κ° λ°μν κ²μ λνλ΄λ μν μ½λμ
λλ€.
μ μ½λλ μλ²κ° μμ² μ²λ¦¬ κ³Όμ μμ 무ν 루νμ λΉ μ‘μμ μ리λλ° μ¬μ©λ©λλ€.
7) 510 Not Extended (νμ₯ νμ)
μλ²κ° μμ²λ°μ HTTP μμ²μ λν΄ νμν νμ₯ κΈ°λ₯(extension)μ΄ μλ²μ ꡬνλμ§ μμμμ λνλ΄λ μν μ½λμ
λλ€.
ν΄λΌμ΄μΈνΈκ° μμ²ν λμμ μννκΈ° μν΄ μΆκ°μ μΈ νμ₯ κΈ°λ₯μ΄ νμνμ§λ§,
μλ²μλ ν΄λΉ κΈ°λ₯μ΄ κ΅¬νλμ΄ μμ§ μμ κ²½μ°μ μ΄ μν μ½λκ° λ°νλ©λλ€.
8) 511 Network Authentication Required (λ€νΈμν¬ μΈμ¦ νμ)
μμ²ν 리μμ€μ μ κ·ΌνκΈ° μν΄ λ€νΈμν¬ μμ€μ μΈμ¦μ΄ νμν¨μ λνλ΄λ μν μ½λμ
λλ€.
μ μ½λλ ν΄λΌμ΄μΈνΈκ° μμ²ν 리μμ€μ μ κ·ΌνκΈ° μν΄ λ€νΈμν¬ μΈμ¦μ΄ νμν κ²½μ°μ μ¬μ©λ©λλ€.
λ¬Όλ‘ μμ λͺ¨λ Status μ½λλ₯Ό μ¬μ©ν΄λ³΄μ§ μμλ€.
λ΄κ° μ£Όλ‘ μ¬μ©ν μ½λλ€μ 200, 201, 400, 401, 403, 409, 412, 500 μ λκ° μλ€.
λ΄κ° μλ¬νΈλ€λ§μ ν΅ν΄μ νΉμ Status μ½λλ₯Ό λ°°μΆν λ, μλ―Έλ₯Ό λͺ¨λ₯΄κ³ μ°κ³ μλ€λ κ±Έ μκ²λμλ€.
κ·Έλμ 곡λΆμ°¨μμμ μ΄λ€ μ½λλ€μ΄ μλμ§ μ΄ν΄λ³΄μκ³ , μμΌλ‘λ μμ μ νλ©΄μ μ΄λ΄λλ μ΄λ€ μ½λλ₯Ό μ¬μ©νλ©΄ μ ν©ν κΉ? λ₯Ό λ μ¬λ¦¬κ² λλ€λ©΄ μ¬κΈ°μ λ€μ΄μμ μ°Έκ³ λ₯Ό λ§μ΄ νκ² λ κ² κ°λ€.
μ°Έκ³ λ₯Ό νλ©΄μ κΈ°μ΅μ λ¨λ λΆλΆλ€μ κ·Έ λ κ·Έ λ μμλ‘ ν΄λΉ μ½λ μλμ μμ±ν΄ λκ°λ κ²λ μ’μ λ°©μμ΄λΌλ μκ°μ΄ λ λ€.
#HTTP_Status_Codes #μλ¬νΈλ€λ§ #μμΈμ²λ¦¬ #μλ¬μ½λ #μνμ½λ
μ°Έκ³ λ¬Έμ1 / μ°Έκ³ λ¬Έμ2 / μ°Έκ³ λ¬Έμ3 / μ°Έκ³ λ¬Έμ4
'CS > HTTP' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[CS] : HTTP μ HTTPS (0) | 2023.08.28 |
---|---|
[HTTP] : λ©μλ (0) | 2023.08.22 |
[HTTP] : RESTful API λ 무μμΈμ§ ? (0) | 2023.07.13 |