๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • Dev Blog
CS/Network

[HTTP] - HTTP ๋ฉ”์„œ๋“œ์˜ ํ™œ์šฉ

by ์œ ์ง„์˜ 2022. 8. 5.
์ธํ”„๋Ÿฐ ๊ฐ•์˜ ์ค‘ ๋ชจ๋“  ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ HTTP ์›น ๊ธฐ๋ณธ ์ง€์‹์ด๋ผ๋Š” ๊ฐ•์˜์— ๋Œ€ํ•œ TIL์ž…๋‹ˆ๋‹ค.


HTTP ๋ฉ”์„œ๋“œ์˜ ํ™œ์šฉ

  • ํด๋ผ์ด์–ธํŠธ์—์„œ ์„œ๋ฒ„๋กœ์˜ ๋ฐ์ดํ„ฐ ์ „์†ก

 

ํด๋ผ์ด์–ธํŠธ์—์„œ ์„œ๋ฒ„๋กœ์˜ ๋ฐ์ดํ„ฐ ์ „์†ก

๋ฐ์ดํ„ฐ ์ „๋‹ฌ ๋ฐฉ์‹์€ ํฌ๊ฒŒ 2๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ๋กœ๋Š”, GET ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด์„œ ์ฟผ๋ฆฌ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก์ด๋‹ค. ์ฃผ๋กœ ๊ฒ€์ƒ‰์–ด๋‚˜ ์ •๋ ฌ ํ•„ํ„ฐ ๊ธฐ๋Šฅ์„ ์š”๊ตฌํ•  ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค. ๋‘ ๋ฒˆ์งธ๋กœ๋Š”, ์š”์ฒญ ๋ฉ”์‹œ์ง€์˜ ๋ฐ”๋””๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก์ด๋‹ค. POST๋‚˜ PUT ๋ฉ”์„œ๋“œ๊ฐ€ ์ด์— ์‚ฌ์šฉ๋œ๋‹ค. ์ฃผ๋กœ ํšŒ์› ๊ฐ€์ž…, ์ƒํ’ˆ ์ฃผ๋ฌธ, ๋ฆฌ์†Œ์Šค ๋“ฑ๋ก, ๋ณ€๊ฒฝ๋“ฑ์„ ์š”๊ตฌํ•  ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค.

 

 

๐Ÿ’ก์š”์ฒญ ๋ฉ”์‹œ์ง€๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•˜๋Š” 4๊ฐ€์ง€ ์ƒํ™ฉ

 

์ •์  ๋ฐ์ดํ„ฐ ์กฐํšŒ

์ด๋ฏธ์ง€ ํŒŒ์ผ์ด๋‚˜ ์ •์  ํ…์ŠคํŠธ ๋ฌธ์„œ๋“ฑ์„ ์กฐํšŒํ•˜๋Š” ์ƒํ™ฉ์ผ ๋•Œ๋ฅผ ์ •์  ๋ฐ์ดํ„ฐ ์กฐํšŒ๋ผ๊ณ  ํ•œ๋‹ค. ์ด๋Ÿฌํ•œ ์ •์  ๋ฐ์ดํ„ฐ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์ฟผ๋ฆฌ ํŒŒ๋ผ๋ฏธํ„ฐ ์—†์ด ๋ฆฌ์†Œ์Šค ๊ฒฝ๋กœ๋กœ ๋‹จ์ˆœํ•˜๊ฒŒ ์กฐํšŒ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค. ์ด๋•Œ, GET ๋ฉ”์„œ๋“œ๊ฐ€ ์‚ฌ์šฉ๋œ๋‹ค.

 

๋™์  ๋ฐ์ดํ„ฐ ์กฐํšŒ

์กฐํšŒ ์กฐ๊ฑด์„ ์ค„์—ฌ์ฃผ๋Š” ํ•„ํ„ฐ๋‚˜ ์กฐํšŒ ๊ฒฐ๊ณผ๋ฅผ ์ •๋ ฌํ•˜๋Š” ์ •๋ ฌ ์กฐ๊ฑด์„ ์‚ฌ์šฉํ•˜๋Š” ์ƒํ™ฉ์„ ๋™์  ๋ฐ์ดํ„ฐ ์กฐํšŒ๋ผ๊ณ  ํ•œ๋‹ค. ๋™์  ๋ฐ์ดํ„ฐ ์กฐํšŒ๋ฅผ ํ•  ๋•Œ์—๋Š” ์ฟผ๋ฆฌ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์„œ๋ฒ„์— ๋ฐ์ดํ„ฐ๋ฅผ ์ „๋‹ฌํ•œ๋‹ค. ์ด๋•Œ๋„ GET ๋ฉ”์„œ๋“œ๊ฐ€ ์‚ฌ์šฉ๋œ๋‹ค.

 

HTML Form์„ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก

HTML Form์€ submit์ด ๋˜๋ฉด ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ž๋™์œผ๋กœ HTTP ์š”์ฒญ ๋ฉ”์‹œ์ง€๋ฅผ ์ƒ์„ฑํ•ด์„œ ์„œ๋ฒ„๋กœ ์ „๋‹ฌํ•ด์ค€๋‹ค. POST ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ HTML Form ๋ฐ์ดํ„ฐ ์ „์†ก์€ Form์˜ ๋‚ด์šฉ์„ key=value ํ˜•์‹์œผ๋กœ ๋ฉ”์‹œ์ง€ ๋ฐ”๋””๋ฅผ ํ†ตํ•ด์„œ ์ด๋ฃจ์–ด์ง„๋‹ค.

 

์ถœ์ฒ˜) https://www.inflearn.com/course/http-์›น-๋„คํŠธ์›Œํฌ ๊ฐ•์˜์ž๋ฃŒ

 

์ถœ์ฒ˜) https://www.inflearn.com/course/http-์›น-๋„คํŠธ์›Œํฌ ๊ฐ•์˜์ž๋ฃŒ

 

HTML Form ๋ฐ์ดํ„ฐ ์ „์†ก์€ POST ๋ฉ”์„œ๋“œ ๋ง๊ณ ๋„ GET ๋ฉ”์„œ๋“œ๋„ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋‹ค. GET ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Form์˜ ๋‚ด์šฉ์„ request-target์˜ ์ฟผ๋ฆฌ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์‚ฌ์šฉํ•ด์„œ ์š”์ฒญ ๋ฉ”์‹œ์ง€๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

 

HTTP API๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก

 

์ถœ์ฒ˜) https://www.inflearn.com/course/http-์›น-๋„คํŠธ์›Œํฌ ๊ฐ•์˜์ž๋ฃŒ

์œ„์˜ ์š”์ฒญ HTTP ๋ฉ”์‹œ์ง€์ฒ˜๋Ÿผ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋Š” ๊ฒƒ์„ HTTP API๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก์ด๋ผ๊ณ  ํ•œ๋‹ค. HTTP API๋Š” ๋ฒก์—”๋“œ ์‹œ์Šคํ…œ ํ†ต์‹ , ์•„์ดํฐ์ด๋‚˜ ์•ˆ๋“œ๋กœ์ด๋“œ ๊ฐ™์€ ์•ฑ ํด๋ผ์ด์–ธํŠธ, React๋‚˜ VueJS๊ฐ™์€ ์›น ํด๋ผ์ด์–ธํŠธ์™€ ํ†ต์‹ ํ•  ๋•Œ ์‚ฌ์šฉ๋œ๋‹ค. POST๋‚˜ PUT ๋ฉ”์„œ๋“œ๋Š” ๋ฉ”์‹œ์ง€ ๋ฐ”๋””๋ฅผ ํ†ตํ•ด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ณ  GET ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ์ฟผ๋ฆฌ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋ฆฌ์†Œ์Šค ์กฐํšŒ๋ฅผ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์„ ํ•œ๋‹ค.  

๋Œ“๊ธ€