๐ŸšฆHTTP ๋ฉ”์„œ๋“œ ์„ ํƒ ๊ฐ€์ด๋“œ

์šฉ๋„๋ณ„๋กœ ์“ธ ๋ฉ”์„œ๋“œ์™€ ๊ทœ๊ฒฉ ์†์„ฑ ํ™•์ธ

ํ‘œ์ค€ ๋ฉ”์„œ๋“œ 9๊ฐœ์˜ ๊ทœ๊ฒฉ ์†์„ฑ

๋ฉ”์„œ๋“œ์•ˆ์ „๋ฉฑ๋“ฑ์บ์‹œ์š”์ฒญ ๋ณธ๋ฌธ
GETOOO์˜๋ฏธ ์—†์Œ
HEADOOO์˜๋ฏธ ์—†์Œ
POSTXX์กฐ๊ฑด๋ถ€์‚ฌ์šฉ
PUTXOX์‚ฌ์šฉ
DELETEXOX์˜๋ฏธ ์—†์Œ
CONNECTXXX๋ณด๋‚ด์ง€ ์•Š์Œ
OPTIONSOOX์˜๋ฏธ ์—†์Œ
TRACEOOX๋ณด๋‚ด์ง€ ์•Š์Œ
PATCHXX์กฐ๊ฑด๋ถ€์‚ฌ์šฉ

PATCH ๋ฅผ ๋บ€ 8๊ฐœ๋Š” RFC 9110, PATCH ๋Š” RFC 5789 ๊ฐ€ ์ •์˜ํ•œ๋‹ค. ํ‘œ์˜ ๊ฐ’์€ ๋‘ ๊ทœ๊ฒฉ์ด ์ง์ ‘ ์ •ํ•œ ์†์„ฑ์ด๋ฉฐ ์ด ํŽ˜์ด์ง€์—์„œ ๋งŒ๋“  ๊ธฐ์ค€์ด ์•„๋‹ˆ๋‹ค. '์กฐ๊ฑด๋ถ€'๋Š” ์‘๋‹ต์— ๋ช…์‹œ์  ์‹ ์„ ๋„ ์ •๋ณด์™€ ์š”์ฒญ URI ์™€ ๊ฐ™์€ Content-Location ์ด ํ•จ๊ป˜ ์žˆ์„ ๋•Œ๋งŒ ์บ์‹œํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋œป์ด๋‹ค.

๊ด€๋ จ๋œ ๋„๊ตฌ

HTTP ๋ฉ”์„œ๋“œ, ์šฉ๋„๋ณ„๋กœ ๋ฌด์—‡์„ ๊ณ ๋ฅผ๊นŒ

REST API ๋ฅผ ๋งŒ๋“ค ๋•Œ ๊ฐ€์žฅ ๋จผ์ € ๋ง‰ํžˆ๋Š” ์ง€์ ์ด ๋ฉ”์„œ๋“œ ์„ ํƒ์ด๋‹ค. ์œ„์—์„œ ํ•˜๋ ค๋Š” ์ผ๊ณผ ์žฌ์‹œ๋„ ์กฐ๊ฑด ๋‘ ๊ฐ€์ง€๋งŒ ๊ณ ๋ฅด๋ฉด ๊ทธ ์šฉ๋„์— ์“ฐ๋Š” ๋ฉ”์„œ๋“œ์™€ ํ•จ๊ป˜ ์•ˆ์ „ยท๋ฉฑ๋“ฑยท์บ์‹œ ๊ฐ€๋Šฅ ์—ฌ๋ถ€, ์š”์ฒญ ๋ณธ๋ฌธ์„ ์“ฐ๋Š”์ง€๊นŒ์ง€ ํ•œ ํ™”๋ฉด์— ๋‚˜์˜จ๋‹ค. ์•„๋ž˜ ํ‘œ๋Š” ํ‘œ์ค€ ๋ฉ”์„œ๋“œ 9๊ฐœ๋ฅผ ๊ฐ™์€ ๊ธฐ์ค€์œผ๋กœ ๋‚˜๋ž€ํžˆ ๋†“์€ ๊ฒƒ์ด๋‹ค.

์•ˆ์ „์€ ์ฝ๊ธฐ๋งŒ ํ•˜๊ณ  ์„œ๋ฒ„ ์ƒํƒœ๋ฅผ ๋ฐ”๊พธ์ง€ ์•Š๋Š”๋‹ค๋Š” ๋œป์ด๊ณ , ๋ฉฑ๋“ฑ์€ ๊ฐ™์€ ์š”์ฒญ์„ ์—ฌ๋Ÿฌ ๋ฒˆ ๋ณด๋‚ด๋„ ์„œ๋ฒ„ ์ƒํƒœ์˜ ๊ฒฐ๊ณผ๊ฐ€ ํ•œ ๋ฒˆ ๋ณด๋‚ธ ๊ฒƒ๊ณผ ๊ฐ™๋‹ค๋Š” ๋œป์ด๋‹ค. ์ด ๋‘ ์†์„ฑ๊ณผ ์บ์‹œ ๊ฐ€๋Šฅ ์—ฌ๋ถ€๋Š” GETยทHEADยทPOSTยทPUTยทDELETEยทCONNECTยทOPTIONSยทTRACE ๋ฅผ ์ •์˜ํ•œ RFC 9110 ๊ณผ PATCH ๋ฅผ ์ •์˜ํ•œ RFC 5789 ๊ฐ€ ์ง์ ‘ ์ •ํ•œ ๊ฐ’์ด๋‹ค. 2026๋…„ 10์›” ๊ธฐ์ค€ ๊ทœ๊ฒฉ ๋‚ด์šฉ์ด๋ฉฐ, ์ด ํŽ˜์ด์ง€๊ฐ€ ์ž„์˜๋กœ ๋งค๊ธด ๋“ฑ๊ธ‰์ด ์•„๋‹ˆ๋‹ค.

์ด ๋„๊ตฌ๋Š” ๊ทœ๊ฒฉ์— ์ ํžŒ ์†์„ฑ์„ ๋ณด์—ฌ ์ค„ ๋ฟ, ํŠน์ • ํ”„๋ ˆ์ž„์›Œํฌ๋‚˜ ์„œ๋ฒ„๊ฐ€ ์‹ค์ œ๋กœ ๊ทธ ๋ฉ”์„œ๋“œ๋ฅผ ํ—ˆ์šฉํ•˜๋Š”์ง€๋Š” ํŒ๋‹จํ•˜์ง€ ์•Š๋Š”๋‹ค. ํ”„๋ก์‹œยท๋ฐฉํ™”๋ฒฝยท๊ฒŒ์ดํŠธ์›จ์ด๊ฐ€ PATCH ๋‚˜ TRACE ๋ฅผ ๋ง‰๋Š” ๊ฒฝ์šฐ๊ฐ€ ํ”ํ•˜๋ฏ€๋กœ ์šด์˜ ํ™˜๊ฒฝ์—์„œ ์ง์ ‘ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค. ์ƒํƒœ ์ฝ”๋“œ ์„ ํƒ, ํ—ค๋” ์„ค๊ณ„, ์ธ์ฆ ๋ฐฉ์‹์€ ๋‹ค๋ฃจ์ง€ ์•Š๋Š”๋‹ค.

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

POST ์™€ PUT ์€ ์–ด๋–ป๊ฒŒ ๊ตฌ๋ถ„ํ• ๊นŒ?

์ƒˆ ์ž์›์˜ ์œ„์น˜๋ฅผ ์„œ๋ฒ„๊ฐ€ ์ •ํ•˜๋ฉด POST, ํด๋ผ์ด์–ธํŠธ๊ฐ€ URI ๋ฅผ ์ •ํ•˜๊ณ  ๊ทธ ๋‚ด์šฉ์„ ํ†ต์งธ๋กœ ๋Œ€์ฒดํ•˜๋ฉด PUT ์ด๋‹ค. PUT ์€ ๋ฉฑ๋“ฑ์ด๋ผ ์žฌ์‹œ๋„์— ์•ˆ์ „ํ•˜๊ณ  POST ๋Š” ๊ทธ๋ ‡์ง€ ์•Š๋‹ค.

PATCH ๋Š” ์™œ ๋ฉฑ๋“ฑ์ด ์•„๋‹๊นŒ?

ํŒจ์น˜ ๋ฌธ์„œ์— "๊ฐ’์„ 1 ๋”ํ•ด๋ผ" ์ฒ˜๋Ÿผ ํ˜„์žฌ ์ƒํƒœ์— ์˜์กดํ•˜๋Š” ์ง€์‹œ๋ฅผ ๋‹ด์„ ์ˆ˜ ์žˆ์–ด์„œ๋‹ค. ๊ทœ๊ฒฉ์ด ๋ฉฑ๋“ฑ์„ ๋ณด์žฅํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์žฌ์‹œ๋„๊ฐ€ ํ•„์š”ํ•˜๋ฉด ์กฐ๊ฑด๋ถ€ ์š”์ฒญ์œผ๋กœ ๋ณดํ˜ธํ•œ๋‹ค.

GET ์š”์ฒญ์— ๋ณธ๋ฌธ์„ ๋„ฃ์–ด๋„ ๋ ๊นŒ?

๊ทœ๊ฒฉ์ด GET ๋ณธ๋ฌธ์— ์ •์˜๋œ ์˜๋ฏธ๋ฅผ ๋‘์ง€ ์•Š์•˜๊ณ  ์ค‘๊ฐ„ ์„œ๋ฒ„๊ฐ€ ๋ฒ„๋ฆฌ๊ฑฐ๋‚˜ ๊ฑฐ๋ถ€ํ•  ์ˆ˜ ์žˆ๋‹ค. ์กฐ๊ฑด์ด ๊ธธ๋ฉด ์งˆ์˜ ๋ฌธ์ž์—ด์ด๋‚˜ POST ๋ฅผ ์“ฐ๋Š” ํŽธ์ด ์•ˆ์ „ํ•˜๋‹ค.