๐Ÿ“š Study/๋„คํŠธ์›Œํฌ

[HTTP] Request method์™€ Status code

์ ์ด 2022. 5. 26. 21:19
๋ฐ˜์‘ํ˜•

HTTP Request Method

Get: ๋ฆฌ์†Œ์Šค ์กฐํšŒ

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์—๊ฒŒ ์ •๋ณด๋ฅผ ์š”์ฒญํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” method
  • URL ์ฃผ์†Œ ๋์— key-value์Œ์œผ๋กœ parameter๋ฅผ ํฌํ•จํ•˜์—ฌ ์ „์†ก: Query String 
  • ์บ์‹œ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค: ํ•œ๋ฒˆ ์„œ๋ฒ„์— Get์š”์ฒญ์„ ํ•œ ์ ์ด ์žˆ๋‹ค๋ฉด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅ →  ์ดํ›„ ๋™์ผํ•œ ์š”์ฒญ์€ ๋ธŒ๋ผ์šฐ์ €์— ์ €์žฅ๋œ ๊ฐ’์œผ๋กœ ๊ฐ€์ ธ์˜ด

POST: ์š”์ฒญ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ

ํด๋ผ์ด์–ธํŠธ๊ฐ€ body๋ฅผ ํ†ตํ•ด ์ „๋‹ฌํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์„œ๋ฒ„๊ฐ€ ์ฒ˜๋ฆฌํ•˜๋„๋ก ์š”์ฒญํ•˜๋Š” method
  • ๊ผญ ๋ฆฌ์†Œ์Šค๋ฅผ ๋“ฑ๋กํ•˜๋Š” ๊ฒƒ๋งŒ ์•„๋‹ˆ๋ผ, ๋ฆฌ์†Œ์Šค๋งˆ๋‹ค ๋‹ค์–‘ํ•˜๊ฒŒ ์ฒ˜๋ฆฌ
  • ๋ฐ์ดํ„ฐ ์ƒ์„ฑ ํ˜น์€ ๋ณ€๊ฒฝ, ํŠน์ • ํ”„๋กœ์„ธ์Šค ์ฒ˜๋ฆฌ

GET VS POST

Get ๋ฉ”์†Œ๋“œ๋Š” ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์—๊ฒŒ ๋ฆฌ์†Œ์Šค๋ฅผ ์š”์ฒญํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”์†Œ๋“œ์ด๊ณ , POST๋Š” ์„œ๋ฒ„์—๊ฒŒ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ๋ฅผ ์š”์ฒญํ•  ๋–„ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”์†Œ๋“œ์ด๋‹ค.
Get ์š”์ฒญ์˜ ๊ฒฝ์šฐ ํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ํŠน์ •ํ•˜๊ธฐ ์œ„ํ•ด URL ๋’ค์— Query String์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์ •๋ณด๋ฅผ ์กฐํšŒํ•˜๊ณ , POST ์š”์ฒญ์˜ ๊ฒฝ์šฐ ์ „๋‹ฌํ•  ๋ฐ์ดํ„ฐ๋ฅผ Body ๋ถ€๋ถ„์— ํฌํ•จํ•˜์—ฌ ํ†ต์‹ ํ•œ๋‹ค.
Get ์š”์ฒญ์˜ ๊ฒฝ์šฐ URL ๋’ค์˜ Query String๊นŒ์ง€ ํฌํ•จํ•˜์—ฌ ๋ธŒ๋ผ์šฐ์ € ํžˆ์Šคํ† ๋ฆฌ์— ๋‚จ๊ฒŒ ๋˜๊ณ  ์บ์‹œ๊ฐ€ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ, POST ์š”์ฒญ์˜ ๊ฒฝ์šฐ ๋ธŒ๋ผ์šฐ์ € ํžˆ์Šคํ† ๋ฆฌ์— ๋‚จ์ง€ ์•Š๊ณ  ์บ์‹œ๋„ ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

PUT VS PATCH

PUT ๋ฉ”์†Œ๋“œ์™€ PATCH ๋ฉ”์†Œ๋“œ๋Š” ๋ชจ๋‘ ์„œ๋ฒ„์˜ ๋ฆฌ์†Œ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๋ฉ”์†Œ๋“œ์ด๋‹ค. ํ•˜์ง€๋งŒ PUT ์š”์ฒญ์˜ ๊ฒฝ์šฐ ๋ชจ๋“  ๋ฆฌ์†Œ์Šค๋ฅผ ์ˆ˜์ •, ๋Œ€์ฒดํ•˜๊ณ , PATCH ์š”์ฒญ์˜ ๊ฒฝ์šฐ ์ผ๋ถ€ ๋ฆฌ์†Œ์Šค๋งŒ ์ˆ˜์ •ํ•œ๋‹ค. 

HTTP Status code

ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ณด๋‚ธ HTTP์š”์ฒญ์— ๋Œ€ํ•œ ์„œ๋ฒ„์˜ ์‘๋‹ต ์ฝ”๋“œ๋กœ, ์ƒํƒœ ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด ์š”์ฒญ์˜ ์„ฑ๊ณต / ์‹คํŒจ ์—ฌ๋ถ€๋ฅผ ํŒ๋‹จ
status code message  
200 OK ์š”์ฒญ ์„ฑ๊ณต
201 Created ๋ฆฌ์†Œ์Šค ์ƒ์„ฑ ์„ฑ๊ณต
400 Bad Request ๋ฐ์ดํ„ฐ์˜ ํ˜•์‹์ด ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š๋Š” ๋“ฑ ์„œ๋ฒ„๊ฐ€ ์š”์ฒญ์„ ์ดํ•ดํ•  ์ˆ˜ ์—†์Œ
401 Unauthorized ์ธ์ฆ๋˜์ง€ ์•Š์€ ์ƒํƒœ์—์„œ ์ธ์ฆ์ด ํ•„์š”ํ•œ ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผ 
( ex. ๋กœ๊ทธ์ธ ์ „์— ์‚ฌ์šฉ์ž ์ •๋ณด ์š”์ฒญ )
403 Forbidden ์ธ์ฆ๋œ ์ƒํƒœ์—์„œ ๊ถŒํ•œ์ด ์—†๋Š” ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผ
( ex. ์ผ๋ฐ˜ ์œ ์ €๊ฐ€ ๊ด€๋ฆฌ์ž ๋ฉ”๋‰ด ์ ‘๊ทผ )
404 Not Found ์š”์ฒญํ•œ route๊ฐ€ ์—†์Œ. ์ฐพ๋Š” ๋ฆฌ์†Œ์Šค๊ฐ€ ์—†์Œ.
500 Bad Gateway ์„œ๋ฒ„์—์„œ ์˜ˆ์ƒํ•˜์ง€ ๋ชปํ•œ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•จ

 

๋ฐ˜์‘ํ˜•