ํ™ˆ HTTP ๋ฉ”์„œ๋“œ
ํฌ์ŠคํŠธ
์ทจ์†Œ

HTTP ๋ฉ”์„œ๋“œ

๐Ÿ’ป HTTP

HTTP ํ”„๋กœํ† ์ฝœ์€ ์‹ ๋ขฐ์„ฑ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ์ „์†ก ํ”„๋กœํ† ์ฝœ๋กœ ์ˆ˜์‹ญ์–ต๊ฐœ์˜ ์ด๋ฏธ์ง€, HTML ํŽ˜์ด์ง€, ํ…์ŠคํŠธ ํŒŒ์ผ, ๋™์˜์ƒ, ์Œ์„ฑ ํŒŒ์ผ๋“ฑ๊ณผ ๊ฐ™์€ ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ณ  ์ •ํ™•ํ•˜๊ฒŒ ์‚ฌ์šฉ์ž์˜ ๋ธŒ๋ผ์šฐ์ €์— ์˜ฎ๊ฒจ์ฃผ๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.
HTTP ํ”„๋กœํ† ์ฝœ์€ ๋ฉ”์„ธ์ง€๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์Šต๋‹ˆ๋‹ค. HTTP ๋ฉ”์„ธ์ง€๋Š” ํด๋ผ์ด์–ธํŠธ๋กœ๋ถ€ํ„ฐ์˜ ์š”์ฒญ์ด๋‚˜ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ์˜ ์‘๋‹ต ์ค‘ ํ•˜๋‚˜๋ฅผ ํฌํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”์„ธ์ง€์˜ ๊ตฌ์กฐ๋Š” ์‹œ์ž‘์ค„, ํ—ค๋”, ๋ณธ๋ฌธ ์„ธ๋ถ€๋ถ„์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ ๋ณธ๋ฌธ์€ ์—†์„์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

1
2
3
4
5
6
7
8
9
10
11
<!-- ์š”์ฒญ ๋ฉ”์„ธ์ง€ -->
<๋ฉ”์„œ๋“œ> <์š”์ฒญ URL> <๋ฒ„์ „>
<ํ—ค๋”>

<์—”ํ‹ฐํ‹ฐ ๋ณธ๋ฌธ>

<!-- ์‘๋‹ต ๋ฉ”์„ธ์ง€ -->
<๋ฒ„์ „> <์ƒํƒœ ์ฝ”๋“œ> <์‚ฌ์œ  ๊ตฌ์ ˆ>
<ํ—ค๋”>

<์—”ํ‹ฐํ‹ฐ ๋ณธ๋ฌธ>

์œ„์˜ ์˜ˆ์‹œ๋Š” ๊ฐ๊ฐ ์š”์ฒญ๊ณผ ์‘๋‹ต์˜ HTTP ๋ฉ”์„ธ์ง€๊ฐ€ ๊ฐ–๋Š” ๊ตฌ์กฐ ์ž…๋‹ˆ๋‹ค.

๐Ÿ’ป ๋ฉ”์„œ๋“œ

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์ชฝ์œผ๋กœ ๋ณด๋‚ด๋Š” HTTP ๋ฉ”์„ธ์ง€์˜ ์‹œ์ž‘์ค„์— ์žˆ์œผ๋ฉฐ, ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์—๊ฒŒ ๊ธฐ๋Œ€ํ•˜๋Š” ๋™์ž‘์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์‹œ๋งํ•ด ์„œ๋ฒ„์—๊ฒŒ ๋ฌด์—‡์„ ํ•ด์•ผ ํ•˜๋Š”์ง€ ๋งํ•ด์ฃผ๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ™‹โ€โ™‚๏ธ GET

๊ฐ€์žฅ ํ”ํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”์„œ๋“œ๋กœ ์„œ๋ฒ„์—์„œ ๋ฆฌ์†Œ์Šค๋ฅผ ์š”์ฒญํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ํ•ด๋‹น ์š”์ฒญ ๋ฉ”์„ธ์ง€์˜ ๋ณธ๋ฌธ์€ ์—†์Šต๋‹ˆ๋‹ค.

๐Ÿ™‹โ€โ™‚๏ธ HEAD

GET๊ณผ ๋™์ผํ•˜๊ฒŒ ํ–‰๋™ํ•˜์ง€๋งŒ, ์„œ๋ฒ„๋Š” ์‘๋‹ต์œผ๋กœ ํ—ค๋”๋งŒ ๋Œ๋ ค์ค๋‹ˆ๋‹ค. ์ฆ‰ ๋ณธ๋ฌธ์ด ๋ฐ˜ํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
HEAD ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฐ€์ ธ์˜ค์ง€ ์•Š๊ณ ๋„ ํ—ค๋”๋งŒ ์กฐ์‚ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋ฆฌ์†Œ์Šค๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ๋Š”์ง€๋ฅผ ํ™•์ธํ•˜๊ฑฐ๋‚˜ ๊ฐœ์ฒด์˜ ์กด์žฌ ์œ ๋ฌด๋ฅผ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์š”์ฒญ ๋ฉ”์„ธ์ง€์˜ ๋ณธ๋ฌธ์€ ์—†์Šต๋‹ˆ๋‹ค.

๐Ÿ™‹โ€โ™‚๏ธ PUT

GET๊ณผ๋Š” ๋ฐ˜๋Œ€๋กœ ์„œ๋ฒ„์— ์ •๋ณด๋ฅผ ์ €์žฅํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. PUT ๋ฉ”์„œ๋“œ์˜ ์˜๋ฏธ๋Š” ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์˜ ๋ณธ๋ฌธ์„ ๊ฐ€์ง€๊ณ  ์š”์ฒญ URL์˜ ์ด๋ฆ„๋Œ€๋กœ ์ƒˆ ๋ฌธ์„œ๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‚˜, ์ด๋ฏธ ์กด์žฌํ•˜๋Š” URL์ด๋ผ๋ฉด ๊ต์ฒดํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์š”์ฒญ ๋ฉ”์„ธ์ง€์— ๋ณธ๋ฌธ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ™‹โ€โ™‚๏ธ POST

POST ๋ฉ”์„œ๋“œ๋Š” ์„œ๋ฒ„์— ์ž…๋ ฅ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ธฐ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. PUT ๋ฉ”์„œ๋“œ์™€ ์œ ์‚ฌํ•˜์ง€๋งŒ, POST๋Š” ์„œ๋ฒ„์— ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ๋ฐ˜๋ฉด, PUT์€ ์„œ๋ฒ„์— ์žˆ๋Š” ๋ฆฌ์†Œ์Šค์— ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ฒ„๊ฐ€ ์ฒ˜๋ฆฌํ•ด์•ผํ•  ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ ๋ฉ”์„ธ์ง€์— ๋ณธ๋ฌธ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ™‹โ€โ™‚๏ธ TRACE

๋ฉ”์„ธ์ง€๊ฐ€ ํ”„๋ก์‹œ๋ฅผ ๊ฑฐ์ณ ์„œ๋ฒ„์— ๋„๋‹ฌํ•˜๋Š” ๊ณผ์ •์„ ์ถ”์ ํ•  ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ ๋ฉ”์„ธ์ง€์— ๋ณธ๋ฌธ์ด ์—†์Šต๋‹ˆ๋‹ค.

๐Ÿ™‹โ€โ™‚๏ธ OPTIONS

์„œ๋ฒ„์—์„œ ์–ด๋–ค ๋ฉ”์†Œ๋“œ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋ฉฐ, ์š”์ฒญ ๋ฉ”์„ธ์ง€์— ๋ณธ๋ฌธ์ด ์—†์Šต๋‹ˆ๋‹ค.

๐Ÿ™‹โ€โ™‚๏ธ DELETE

์„œ๋ฒ„์—์„œ ์š”์ฒญ URL๋กœ ์ง€์ •ํ•œ ๋ฆฌ์†Œ์Šค ์ œ๊ฑฐ๋ฅผ ์š”์ฒญํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋ฉฐ, ์š”์ฒญ ๋ฉ”์„ธ์ง€์— ๋ณธ๋ฌธ์ด ์—†์Šต๋‹ˆ๋‹ค.

๐Ÿ™‹โ€โ™‚๏ธ CONNECT

CONNECT ๋ฉ”์†Œ๋“œ๋Š” ์š”์ฒญํ•œ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•ด ์–‘๋ฐฉํ–ฅ ์—ฐ๊ฒฐ์„ ์‹œ์ž‘ํ•˜๋Š” ๋ฉ”์†Œ๋“œ์ž…๋‹ˆ๋‹ค.

์ด ๊ธฐ์‚ฌ๋Š” ์ €์ž‘๊ถŒ์ž์˜ CC BY 4.0 ๋ผ์ด์„ผ์Šค๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.

Controller, Service, Repository

Spring annotation