CS/Network

HTTP

chaerlo127 2024. 2. 3. 22:48
728x90

HTTP(HyperText Transfer Protocol)

  • ์›น ์ƒ์—์„œ ์ •๋ณด๋ฅผ ์ „์†กํ•˜๊ธฐ ์œ„ํ•œ ํ†ต์‹  ํ”„๋กœํ† ์ฝœ
  • HTML ๊ณผ ๊ฐ™์€ ๋ฌธ์„œ๋ฅผ ์ „์†กํ•  ๋•Œ ์‚ฌ์šฉ
  • ์„œ๋ฒ„-ํด๋ผ์ด์–ธํŠธ ๋ชจ๋ธ์„ ๋”ฐ๋ฅด๋ฉฐ, request/response ๊ตฌ์กฐ๋กœ ์›น ์ƒ์—์„œ ์ •๋ณด๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„ ์ˆ˜ ์žˆ์Œ
  • Connectionless / Stateless
  • ๋‹จ์ˆœํ•จ, ํ™•์žฅ ๊ฐ€๋Šฅ

๋ฌด์ƒํƒœ (Stateless)

  • ํด๋ผ์ด์–ธํŠธ์˜ ์ด์ „ ์ƒํƒœ๋ฅผ ๋ณด์กดํ•˜์ง€ ์•Š์Œ
  • ์ƒ๋Œ€๋Š” ๋ฌธ๋งฅ์„ ํŒŒ์•…ํ•˜์ง€ ๋ชปํ•œ ์ฑ„ ๋Œ€ํ™”
    • ์ด์ „์˜ ์ƒํ™ฉ๋“ค์„ ๊ธฐ์–ตํ•˜์ง€ ๋ชปํ•จ
  • ๋‹จ ์ƒํƒœ๋ฅผ ๋ณด๊ด€ํ•˜์ง€ ์•Š์•„๋„ ๋˜๋ฏ€๋กœ, ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์— ์–ด๋Š ์„œ๋ฒ„๊ฐ€ ์‘๋‹ตํ•ด๋„ ์ƒ๊ด€ ์—†์Œ

๋น„์—ฐ๊ฒฐ์„ฑ(Connectionless)

  • ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ์š”์ฒญ์„ ์š”์ฒญ์„ ํ•˜๊ณ  ์‘๋‹ต์„ ๋ฐ›์œผ๋ฉด TCP/IP ์—ฐ๊ฒฐ์„ ๋Š์–ด ์œ ์ง€ ํ•˜์ง€ ์•Š์Œ
  • ์„œ๋ฒ„์˜ ์ž์›์„ ํšจ์œจ์  ๊ด€๋ฆฌ ๋ฐ ์ˆ˜ ๋งŽ์€ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์— ๋Œ€์‘ ๊ฐ€๋Šฅ
  • ๋‹จ, ์—ฐ๊ฒฐ ์‹œ 3-way handshake๋กœ ์ธํ•œ ์‹œ๊ฐ„์ด ์†Œ์š”
  • HTML ๋ฟ ์•„๋‹ˆ๋ผ JS, CSS, Img ๋“ฑ์˜ ์ž์›๋“ค๋„ ํ•จ๊ป˜ ๋‹ค์šด๋กœ๋“œ

๋ฌด์ƒํƒœ / ๋น„์—ฐ๊ฒฐ์„ฑ ํ•ด๊ฒฐ๋ฒ•

  • ์ฟ ํ‚ค, ์„ธ์…˜, jwt ๋“ฑ

HTTP ๋ฉ”์‹œ์ง€

๊ตฌ์„ฑ

start-line ์‹œ์ž‘ ๋ผ์ธ
header ํ—ค๋”
empty line ๊ณต๋ฐฑ ๋ผ์ธ(CRLF, ํ•„์ˆ˜)
message body

 

 

 

์š”์ฒญ ๋ฉ”์‹œ์ง€ ์˜ˆ์‹œ

์‘๋‹ต ๋ฉ”์‹œ์ง€ ์˜ˆ์‹œ

728x90