HTTP ์ํ ์ฝ๋
HTTP ์๋ต ์ํ ์ฝ๋๋ ํน์ HTTP ์์ฒญ์ด ์ฑ๊ณต์ ์ผ๋ก ์๋ฃ๋์๋์ง ์๋ ค์ค๋ค. ์๋ต์ 5๊ฐ์ ๊ทธ๋ฃน์ผ๋ก ๋๋ ์ ์๋ค.
- 1XX : ์ ๋ณด๋ฅผ ์ ๊ณตํ๋ ์๋ต
- 2XX : ์ฑ๊ณต์ ์ธ ์๋ต
- 3XX : ๋ฆฌ๋ค์ด๋ ํธ
- 4XX : ํด๋ผ์ด์ดํผ ์๋ฌ
- 5XX : ์๋ฒ์๋ฌ
์ด ์ํ ์ฝ๋๋ง ํ์ธํ๋๋ผ๋ ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ๋ก ๋ณด๋ธ ์์ฒญ์ ๋ํ ์๋ต์ด ์ฑ๊ณต์ธ์ง ์คํจ์ธ์ง ๋, ๊ตฌ์ฒด์ ์ผ๋ก ์ด๋ค ์ฑ๊ณต์ธ์ง ์ด๋ค ์คํจ์ธ์ง๋ฅผ ์์ธํ ์ ์ ์๋ค.
1XX: ์กฐ๊ฑด๋ถ ์๋ต
์ ์ก ํ๋กํ ์ฝ ์์ค์ ์ ๋ณด ๊ตํ
100 Continue(๊ณ์)
์ด ์๋ต์ ์ง๊ธ๊น์ง ์ํ๊ฐ ๊ด์ฐฎ์ผ๋ฉฐ ํด๋ผ์ด์ธํธ๊ฐ ๊ณ์ ํด์ ์์ฒญ์ ํ๊ฑฐ๋ ์ด๋ฏธ ์์ฒญ์ ์๋ฃํ ๊ฒฝ์ฐ์๋ ๋ฌด์ํด๋ ๋๋๊ฒ์ ์๋ ค์ค๋ค.
101 Switching Protocol(ํ๋กํ ์ฝ ์ ํ)
ํด๋ผ์ด์ธํธ๊ฐ ๋ณด๋ธ Upgrade ์์ฒญ ํค๋์ ๋ํ ์๋ต์ ๋ค์ด๊ฐ๋ฉฐ ์๋ฒ์์ ํ๋กํ ์ฝ์ ๋ณ๊ฒฝํ ๊ฒ์์ ์๋ ค์ค๋ค.
102 Processing(์ฒ๋ฆฌ, WebDAV)
์๋ฒ๊ฐ ์์ฒญ์ ์์ ํ์์ผ๋ฉฐ ์ด๋ฅผ ์ฒ๋ฆฌํ๊ณ ์์ง๋ง, ์์ง ์ ๋๋ก ๋ ์๋ต์ ์๋ ค์ค ์ ์์์ ์๋ ค์ค๋ค.
103 Early Hints(์ฌ์ ๋์)
์ฃผ๋ก Link ํค๋์ ํจ๊ป ์ฌ์ฉ๋์ด ์๋ฒ๊ฐ ์๋ต์ ์ค๋นํ๋ ๋์ ์ฌ์ฉ์ ์์ด์ ํธ๊ฐ ์ฌ์ ๋ก๋ฉ์ ์์ํ ์ ์๋๋ก ํ๋ค.
2XX: ์ฑ๊ณต
200 OK(์ฑ๊ณต)
์์ฒญ์ด ์ฑ๊ณต์ ์ด๊ณ ์ฑ๊ณต์ ์๋ฏธ๋ HTTP ๋ฉ์๋์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ค.
GET: ๋ฆฌ์์ค๋ฅผ ๋ถ๋ฌ์์ ๋ฉ์์ง ๋ฐ๋์ ์ ์ก๋์์ต๋๋ค.
HEAD: ๊ฐ์ฒด ํด๋๊ฐ ๋ฉ์์ง ๋ฐ๋์ ์์ต๋๋ค.
PUT ๋๋ POST: ์ํ ๊ฒฐ๊ณผ์ ๋ํ ๋ฆฌ์์ค๊ฐ ๋ฉ์์ง ๋ฐ๋์ ์ ์ก๋์์ต๋๋ค.
TRACE: ๋ฉ์์ง ๋ฐ๋๋ ์๋ฒ์์ ์์ ํ ์์ฒญ ๋ฉ์์ง๋ฅผ ํฌํจํ๊ณ ์์ต๋๋ค.
201 Created(์์ฑ๋จ)
์์ฒญ์ด ์ฑ๊ณต์ ์ด์์ผ๋ฉฐ ๊ทธ ๊ฒฐ๊ณผ๋ก ์๋ก์ด ๋ฆฌ์์ค๊ฐ ์์ฑ๋์๋ค. ์ด ์๋ต์ ์ผ๋ฐ์ ์ผ๋ก POST ์์ฒญ ๋๋ ์ผ๋ถ PUT ์์ฒญ ์ดํ์ ๋ฐ๋ผ์จ๋ค.
202 Accepted(ํ์ฉ๋จ)
์์ฒญ์ ์์ ํ์์ง๋ง ๊ทธ์ ์ํ์ฌ ํ๋ํ ์ ์๋ค. ์ด ์๋ต์ ์์ฒญ์ฒ๋ฆฌ์ ๋ํ ๊ฒฐ๊ณผ๋ฅผ ์ดํ์ HTTP๋ก ๋น๋๊ธฐ ์๋ต์ ๋ณด๋ด๋ ๊ฒ์ ๋ํด์ ๋ช ํํ๊ฒ ๋ช ์ํ์ง ์๋๋ค. ์ด๊ฒ์ ๋ค๋ฅธ ํ๋ก์ธ์ค์์ ์ฒ๋ฆฌ ๋๋ ์๋ฒ๊ฐ ์์ฒ์ใน ๋ค๋ฃจ๊ณ ์๊ฑฐ๋ ๋ฐฐ์น ํ๋ก์ธ์ค๋ฅผ ํ๊ณ ์๋ ๊ฒฝ์ฐ๋ฅผ ์ํด ๋ง๋ค์ด ์ก๋ค. ์ฆ ์๋ฒ๊ฐ ์์ฒญ์ ์ ์ํ์ง๋ง ์์ง ์ฒ๋ฆฌํ์ง ์์๋ค๋๊ฒ์ด๋ค.
203 Non-Authoritative Information(์ ๋ขฐํ ์ ์๋ ์ ๋ณด)
๋๋ ค๋ฐ์ ๋ฉํ ์ ๋ณด ์ธํธ๊ฐ ์ค๋ฆฌ์ง ์๋ฒ์ ๊ฒ๊ณผ ์ผ์นํ์ง ์์ง๋ง ๋ก์ปฌ์ด๋ ์๋ ํํฐ ๋ณต์ฌ๋ณต์์ ๋ชจ์์ก์์ ์๋ฏธ. ์ด๋ฌํ ์กฐ๊ฑด์์๋ ์ด ์๋ต์ด ์๋๋ผ 200 OK ์๋ต์ ๋ฐ๋์ ์ฐ์ ๋๋ค.
204 No Content(๋ด์ฉ์์)
์์ฒญ์ ๋ํด์ ๋ณด๋ด์ค ์ ์๋ ์ฝํ ์ธ ๊ฐ ์์ง๋ง, ํค๋๋ ์๋ฏธ์์ ์ ์๋ค. ์ฌ์ฉ์-์์ด์ ํธ๋ ๋ฆฌ์์ค๊ฐ ์บ์ ๋ ํค๋๋ฅผ ์๋ก์ด ๊ฒ์ผ๋ก ์ ๋ฐ์ดํธ ํ ์ ์๋ค.
3XX ๋ฆฌ๋ค์ด๋ ์
301 Moved Permanently(์๊ตฌ์ ์ด๋)
์ด ์๋ต ์ฝ๋๋ ์์ฒญํ ๋ฆฌ์์ค์ URI๊ฐ ๋ณ๊ฒฝ๋์์์ ์๋ฏธํ๋ค. ์๋ก์ด URI๊ฐ ์๋ต์์ ์๋ง๋ ์ฃผ์ด์ง ์ ์๋ค.
304 Not Modified(๋ณ๊ฒฝ ์์)
์ด๊ฒ์ ์บ์๋ฅผ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋๋ค. ์ด๊ฒ์ ํด๋ผ์ด์ธํธ์๊ฒ ์๋ต์ด ์์ ๋์ง ์์์์ ์๋ ค์ฃผ๋ฉฐ, ๊ทธ๋ฌ๋ฏ๋ก ํด๋ผ์ด์ธํธ๋ ๊ณ์ํด์ ์๋ต์ ์บ์ ๋ ๋ฒ์ ์ ์ฌ์ฉํ ์ ์๋ค.
4xx ํด๋ผ์ด์ธํธ ์ค๋ฅ
400 Bad Request(์๋ชป๋ ์์ฒญ)
์ด ์๋ต์ ์๋ชป๋ ๋ฌธ๋ฒ์ผ๋ก ์ธํ์ฌ ์๋ฒ๊ฐ ์์ฒญ์ ์ดํดํ ์ ์์์ ์๋ฏธํ๋ค.
401 Unauthorized(๊ถํ ์์)
๋น๋ก HTTP ํ์ค์์๋ "๋ฏธ์น์ธ(unauthorized)"๋ฅผ ๋ช ํํ ํ๊ณ ์์ง๋ง, ์๋ฏธ์ ์ด ์๋ต์ "๋น์ธ์ฆ(unauthenticated)"์ ์๋ฏธํ๋ค. ํด๋ผ์ด์ธํธ๋ ์์ฒญํ ์๋ต์ ๋ฐ๊ธฐ ์ํด์๋ ๋ฐ๋์ ์ค์ค๋ก๋ฅผ ์ธ์ฆํด์ผ ํ๋ค. ๋ก๊ทธ์ธ์ ์คํจํ ๊ฒฝ์ฐ ๋๋ ๋ก๊ทธ์ธํ์ง ์๋ ์ฌ์ฉ์๊ฐ ํ์์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ ค ํ ๋ ์ฌ์ฉํ๋ค.
403 Forbidden(์ ๊ทผ ๊ธ์ง)
ํด๋ผ์ด์ธํธ๊ฐ ์ฝํ ์ธ ์ ์ ๊ทผํ ๊ถ๋ฆฌ๋ฅผ ๊ฐ์ง๊ณ ์์ง ์๋ค. ์๋ฅผ๋ค์ด ํ์์ด ๋ก๊ทธ์ธ์ ํ ์ํ์ด์ง๋ง ์์ง ๊ฒฐ์ ๋ฅผ ํ์ง ์์ Netflix๋ฅผ ์ด์ฉํ ์ ์๋ ๊ฒฝ์ฐ์ด๋ค. 401๊ณผ ๋ค๋ฅธ ์ ์ ์๋ฒ๊ฐ ํด๋ผ์ด์ธํธ๊ฐ ๋๊ตฌ์ธ์ง ์๊ณ ์๋ค.
404 Not Found(์ฐพ์ ์ ์์)
์๋ฒ๊ฐ ์์ฒญ๋ฐ์ ๋ฆฌ์์ค๋ฅผ ์ฐพ์ ์ ์๋ค. ๋ธ๋ผ์ฐ์ ์์๋ ์๋ ค์ง์ง ์์ URL์ ์๋ฏธํ๋ค. ์ด๊ฒ์ API์์ ์ข ์ (URI)์ ์ ์ ํ์ง๋ง ๋ฆฌ์์ค ์์ฒด๋ ์กด์ฌํ์ง ์์์ ์๋ฏธํ ์๋ ์๋ค. ์๋ฒ๋ค์ ์ธ์ฆ๋ฐ์ง ์์ ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ๋ฆฌ์์ค๋ฅผ ์จ๊ธฐ๊ธฐ ์ํ์ฌ ์ด ์๋ต์ 403 ๋์ ์ ์ ์กํ ์๋ ์๋ค. ์ด ์๋ต ์ฝ๋๋ ์น์์ ๋ฐ๋ณต์ ์ผ๋ก ๋ฐ์ํ๊ธฐ ๋๋ฌธ์ ๊ฐ์ฅ ์ ๋ช ํ ์ง๋ ๋ชจ๋ฅธ๋ค.
405 Method Not Allowed(ํ์ฉ๋์ง ์์ ๋ฉ์๋)
์์ฒญ์ ์ง์ ๋ ๋ฉ์๋๊ฐ URI๋ก ํ์๋ ๋ฆฌ์์ค์ ํ์ฉ๋์ง ์์์ ์๋ฏธํ๋ค.
์ด๋ ํด๋ผ์ด์ธํธ๊ฐ ๋ฌธ์ ์กฐํ๋ง ์ ๊ณตํ๋ ์ปฌ๋ ์
์ POST, PUT ๋๋ DELETE๋ฅผ ์ ์กํด ์ปฌ๋ ์
์ ๋ณ๊ฒฝํ๋ ค๊ณ ํ๋ ๊ฒฝ์ฐ์ผ ์ ์๋ค.
408 Request Timeout(์์ฒญ ์๊ฐ ์ด๊ณผ)
์ด ์๋ต์ ์์ฒญ์ ํ์ง ์๊ฐ์ด ์ค๋๋ ์ฐ๊ฒฐ์ ์ผ๋ถ ์๋ฒ๊ฐ ์ ์กํ๋ฉฐ, ์ด๋จ ๋์๋ ์ด์ ์ ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ์ด๋ ํ ์์ฒญ์ด ์์๋ค๊ณ ํ๋๋ผ๋ ๋ณด๋ด์ง๊ธฐ๋ ํฉ๋๋ค. ์ด๊ฒ์ ์๋ฒ๊ฐ ์ฌ์ฉ๋์ง ์๋ ์ฐ๊ฒฐ์ ๋๊ณ ์ถ์ด ํ๋ค๋ ๊ฒ์ ์๋ฏธํ๋ค. ์ด ์๋ต์ ํน์ ๋ช๋ช ๋ธ๋ผ์ฐ์ ์์ ๋น๋ฒํ๊ฒ ๋ณด์ด๋๋ฐ, Chrome, Firefox 27+, ๋๋ IE9์ ๊ฐ์ ์น์ํ ์๋๋ฅผ ์ฌ๋ฆฌ๊ธฐ ์ํด HTTP ์ฌ์ ์ฐ๊ฒฐ ๋ฉ์ปค๋์ฆ์ ์ฌ์ฉํ๋ ๋ธ๋ผ์ฐ์ ๋ค์ด ํด๋น๋๋ค. ๋ํ, ์ผ๋ถ ์๋ฒ๋ ์ด ๋ฉ์์ง๋ฅผ ๋ณด๋ด์ง ์๊ณ ์ฐ๊ฒฐ์ ๋์ด๋ฒ๋ฆฌ๊ธฐ๋ ํ๋ค.
5xx ์๋ฒ ์ค๋ฅ
500(๋ด๋ถ ์๋ฒ ์ค๋ฅ)
์๋ฒ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ฌ ์์ฒญ์ ์ํํ ์ ์๋ค.
501(๊ตฌํ๋์ง ์์)
์๋ฒ์ ์์ฒญ์ ์ํํ ์ ์๋ ๊ธฐ๋ฅ์ด ์๋ค. ์๋ฅผ ๋ค์ด ์๋ฒ๊ฐ ์์ฒญ ๋ฉ์๋๋ฅผ ์ธ์ํ์ง ๋ชปํ ๋ ์ด ์ฝ๋๋ฅผ ํ์ํ๋ค.
502 (Bad Gateway, ๋ถ๋ ๊ฒ์ดํธ์จ์ด)
์๋ฒ๊ฐ ๊ฒ์ดํธ์จ์ด๋ ํ๋ก์ ์ญํ ์ ํ๊ณ ์๊ฑฐ๋ ๋๋ ์ ์คํธ๋ฆผ ์๋ฒ์์ ์๋ชป๋ ์๋ต์ ๋ฐ์๋ค.
503(์๋น์ค๋ฅผ ์ฌ์ฉํ ์ ์์)
์๋ฒ๊ฐ ์ค๋ฒ๋ก๋๋์๊ฑฐ๋ ์ ์ง๊ด๋ฆฌ๋ฅผ ์ํด ๋ค์ด๋์๊ธฐ ๋๋ฌธ์ ํ์ฌ ์๋ฒ๋ฅผ ์ฌ์ฉํ ์ ์๋ค. ์ด๋ ๋๊ฐ ์ผ์์ ์ธ ์ํ์ด๋ค.
504(๊ฒ์ดํธ์จ์ด ์๊ฐ์ด๊ณผ)
์๋ฒ๊ฐ ๊ฒ์ดํธ์จ์ด๋ ํ๋ก์ ์ญํ ์ ํ๊ณ ์๊ฑฐ๋ ๋๋ ์ ์คํธ๋ฆผ ์๋ฒ์์ ์ ๋ ์์ฒญ์ ๋ฐ์ง ๋ชปํ๋ค.
์ฐธ๊ณ ์ฌ์ดํธ
'Back-end' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์น์๋ฒ(Web Server)์ ์น ์ดํ๋ฆฌ์ผ์ด์ ์๋ฒ(Web Application Server) (0) | 2023.06.25 |
---|---|
Slack์ผ๋ก OAuth ์ฌ์ฉํ๊ธฐ (0) | 2022.10.31 |
[REST API]REST API๋? (0) | 2021.08.29 |
[WEB] HTTPS์ SSL์ธ์ฆ์ (0) | 2021.08.29 |
[WEB] HTTP ์ ๋ฆฌ (0) | 2021.08.29 |