Express

Express

Express๋Š” Node.js๋ฅผ ์œ„ํ•œ ์›น ํ”„๋ ˆ์ž„์›Œํฌ์ด๋‹ค. Node.js์˜ HTTP ๋ชจ๋“ˆ์„ ์‚ฌ์šฉํ•˜์—ฌ HTTP ์„œ๋ฒ„๋ฅผ ๋งŒ๋“ ๋‹ค.

Express๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.

  1. HTTP ํ†ต์‹  ์š”์ฒญ(Request : GET, POST, PUT, DELETE)์— ๋Œ€ํ•œ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

  2. HTTP ํ†ต์‹  ์‘๋‹ต(Response)์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด view์˜ ๋ Œ๋”๋ง ์—”์ง„๊ณผ ์—ฐ๊ฒฐํ•œ๋‹ค.

  3. ์ ‘์†์„ ์œ„ํ•œ ํฌํŠธ๋‚˜ ์‘๋‹ต ๋ Œ๋”๋ง์„ ์œ„ํ•œ ํ…œํ”Œ๋ฆฟ ์œ„์น˜๊ฐ™์€ ๊ณตํ†ต ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ค์ •์„ ์ œ๊ณตํ•œ๋‹ค.

  4. ํ•ธ๋“ค๋ง ํŒŒ์ดํ”„๋ผ์ธ ์ค‘ ํ•„์š”ํ•œ ๊ณณ์— ๋ฏธ๋“ค์›จ์–ด๋ฅผ ์ฒ˜๋ฆฌ ์š”์ฒญ์„ ์ถ”๊ฐ€ํ•œ๋‹ค.

URL ๊ตฌ์กฐ

URL(Uniform Resource Locator)์ด๋ž€ ์›น์— ๊ฒŒ์‹œ๋œ ๋ฆฌ์†Œ์Šค์˜ ์œ„์น˜๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.

URL ๋ถ„์„ํ•˜๊ธฐ

https://www.frontendsurvival.com:80/week4/express?name=jiwon&study=frontend

scheme : http or https ์Šคํ‚ค๋งˆ๋Š” ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋ฆฌ์†Œ์Šค๋ฅผ ์š”์ฒญํ•˜๋Š”๋ฐ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœํ† ์ฝœ์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. http๋Š” ๋ณด์•ˆ์ด ์•ˆ๋œ ํ”„๋กœํ† ์ฝœ์ด๊ณ  ์ผ๋ฐ˜์ ์œผ๋กœ๋Š” ๋ณด์•ˆ ์ธ์ฆํ‚ค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” https๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

authority : www.frontendsurvival.com:80 Authority๋Š” ์Šคํ‚ค๋งˆ ๋’ค์— '://'๋กœ ๊ตฌ๋ถ„๋œ๋‹ค. Authority๋Š” ๋„๋ฉ”์ธ๊ณผ ํฌํŠธ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. ํฌํŠธ๋Š” ํ‘œ์ค€ ํฌํŠธ(http:80, https:443)๋ฅผ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ์ƒ๋žตํ•  ์ˆ˜ ์žˆ๋‹ค.

path to resource : /week4/express Path๋Š” ๋ฆฌ์†Œ์Šค์˜ ๊ฒฝ๋กœ๋ฅผ ๋‚˜ํƒ€๋‚ธ๋‹ค.

parameters : ?name=jiwon&study=frontend ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” ์›น ์„œ๋ฒ„์— ์ œ๊ณต๋˜๋Š” ๋งค๊ฐœ๋ณ€์ˆ˜์ด๋‹ค. ์ฟผ๋ฆฌ์ŠคํŠธ๋ง์œผ๋กœ ํ‘œํ˜„๋˜๋ฉฐ, ?๋กœ ์‹œ์ž‘ํ•œ๋‹ค. key=value ํ˜•ํƒœ๋กœ ํ‘œํ˜„๋˜๋ฉฐ, ์—ฌ๋Ÿฌ๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” &๋กœ ๊ตฌ๋ถ„ํ•œ๋‹ค.

HTML์—์„œ URL ์‚ฌ์šฉํ•˜๊ธฐ

<a> ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋‹ค. <link> or <script> ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค. <img>, <video>, <audio> ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฏธ๋””์–ด ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค. <iframe> ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ํŽ˜์ด์ง€๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

REST API & HTTP Method(CRUD)

REST API HTTP URL๋กœ ๋ฆฌ์†Œ์Šค๋ฅผ ๋ช…์‹œํ•˜๊ณ , HTTP Method๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ CRUD Operation์„ ์ ์šฉํ•œ๋‹ค.

CRUD๋ž€ Create, Read, Update, Delete์˜ ์•ฝ์ž๋กœ ๋ฐ์ดํ„ฐ์˜ ์ƒ์„ฑ, ์กฐํšŒ, ์ˆ˜์ •, ์‚ญ์ œ๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

REST API์—์„œ๋Š” ๋‹ค์Œ Method๋ฅผ ์‚ฌ์šฉํ•ด์„œ CRUD Operation์„ ์ ์šฉํ•œ๋‹ค. GET : Read POST : Create PATCH, PUT : Update DELETE : Delete

GET : ํด๋ผ์ด์–ธํŠธ๋Š” GET์„ ์•„์šฉํ•ด ์„œ๋ฒ„์˜ ์ง€์ •๋œ URL์— ์žˆ๋Š” ๋ฆฌ์†Œ์Šค์— ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค. ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋„ฃ์–ด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ํ•„ํ„ฐ๋งํ•˜๊ฑฐ๋‚˜ ์ •๋ ฌํ•  ์ˆ˜ ์žˆ๋‹ค.

POST : ํด๋ผ์ด์–ธํŠธ๋Š” POST๋ฅผ ์ด์šฉํ•ด ์„œ๋ฒ„์˜ ์ง€์ •๋œ URL์— ๋ฆฌ์†Œ์Šค๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.

PUT : ํด๋ผ์ด์–ธํŠธ๋Š” PUT์„ ์ด์šฉํ•ด ์„œ๋ฒ„์˜ ์ง€์ •๋œ URL์— ๋ฆฌ์†Œ์Šค๋ฅผ ์ˆ˜์ •ํ•œ๋‹ค.

DELETE : ํด๋ผ์ด์–ธํŠธ๋Š” DELETE๋ฅผ ์ด์šฉํ•ด ์„œ๋ฒ„์˜ ์ง€์ •๋œ URL์— ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ญ์ œํ•œ๋‹ค.

Last updated