ํฐ์คํ ๋ฆฌ ๋ทฐ
import express from "express";
import morgan from "morgan";
const PORT = 4000;
const app = express();
const logger = morgan("dev");
const handleHome = (req, res) => {
return res.send("<h1>it is dance with server and client</h1>");
};
app.use(logger);
app.get("/", handleHome);
const handleListening = () => {
console.log(`โ
Server listening on port http://localhost:${PORT} ๐`);
};
app.listen(PORT, handleListening);
import express from "express"
const app = express()
app.listen(4000, ()=>{console.log("Server listening on port 4000")})
express๋ก ์๋ฒ์์ฑ ์ฝ๋.
๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ญ์ง๋ ๊ตฌ๋ถ์ด ๋๋๋ฐ ์์ง๋ ์ด๋๊น์ง๊ฐ ์๋ฒ์ด๊ณ ์ด๋๊น์ง๊ฐ ํด๋ผ์ด์ธํธ์ธ์ง ๊ตฌ๋ถ์ด ์ด๋ ต๋ค.
๋๋์ url๋ก req,res๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๊ฒ์ ๋ฐฑ์๋์์ ํ๋์ผ์ธ๊ฒ ๊ฐ๊ณ , ํ๋์ url์์์ ์น๋ธ๋ผ์ฐ์ ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ๋ง๋๋ ๊ฒ์ ํ๋ก ํธ๋ผ๊ณ ํ๋ ๊ฒ ๊ฐ์๋ฐ.. ๊ทธ๋ผ rendering ํ๋ html viewํ์ผ์ ๋ญ๊น? ๊ตณ์ด ๋๋ ์ผ ํ ํ์๊ฐ ์๋ ์ถ๊ธฐ๋ ํ๋ค.
์ผ๋จ ์ค๋ ๋ณต์ตํ ๋ด์ฉ์ ์ ๋ฆฌํด๋ณด์
์๋ฒ๋ 24์๊ฐ ์ผ์ ธ์๋ ์ปดํจํฐ์ด๊ณ ํญ์ ์ฐ๋ฆฌ๋ฅผ ์ง์ผ๋ณด๊ณ ์๋ค. ์ฐ๋ฆฌ๊ฐ ์ด๋ค url์ ์ ๋ ฅํ๋ค๋ ๊ฒ์, url๋ก request ๋ฅผ ๋ณด๋ด๋ ๊ฒ์ด๋ค. ๊ทธ๋ฆฌ๊ณ ์๋ฒ๋ ๊ทธ req๋ฅผ ์ง์ผ๋ณด๊ณ ์๋ค๊ฐ res๋ก ์๋ตํ๋ฉด์ ํ๋ฉด์ ๋ณด์ฌ์ฃผ๋ ๊ฒ์ด๋ค. ์ฐ๋ฆฌ์ ๋ธ๋ผ์ฐ์ ๊ฐ ์ด๋๋ก ์ฐพ์๊ฐ๋๊ฒ ์๋๋ผ ๋ธ๋ผ์ฐ์ ๊ฐ ์์ฒญํ๋ฉด ์๋ฒ๊ฐ ํ๋ฉด์ ๋ณด๋ด์ฃผ๊ณ ๋ธ๋ผ์ฐ์ ๋ ๊ทธ์ ์ฐ๋ฆฌ์๊ฒ ํ๋ฉด์ ๋ณด์ฌ์ค ๋ฟ์ด๋ค.
app.listen(4000)์ ํ๊ธฐ๋๋ฌธ์ ๋ก์ปฌํธ์คํธ 4000๋ฒ์ req๋ฅผ ๋ณด๋ผ์ ์๋ค. ํ์ง๋ง cannot GET / ๊ฐ ๋ฌ๋ค. ์ด ๋ง์ rootํ์ด์ง๋ก์ GET์์ฒญ์ ์๋ตํ ์ ์๋ค๋ ๋ป์ด๋ค. rootํ์ด์ง๋ ์ฒ์ ์ ์ํ๊ฒ ๋๋ ํํ์ด์ง๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค.
์๋ฒ๋ก ๋์์์ app.get("/", callbackfunc)์ ๋ง๋ค์ด ์ฃผ๋ฉด ํํ์ด์ง๋ฅผ ํฅํ GET์์ฒญ์ ์๋ตํ ์ ์๋ค. callbackfunc ๋ถ๋ถ์ ์ปจํธ๋กค๋ฌ๋ผ๊ณ ๋ถ๋ฅธ๋ค. ์ปจํธ๋กค๋ฌ๋ฅผ ํตํด res.send()๋ก ๋ฌธ์์ด์ด๋ html์ ๋ณด๋ผ์๋ ์๊ณ . res.end()๋ก ์๋ต์ ๋ง์น ์๋ ์๊ณ , html์ renderํ ์์๊ณ . ๋ค๋ฅธ url๋ก redirect๋ ํ ์์๋ค. ๊ทธ ์ธ์๋ ๋ง๋ค. ์๋ ์ฐธ๊ณ
https://expressjs.com/ko/4x/api.html#app.get.method
Express 4.x - API ์ฐธ์กฐ
Express 4.x API express() Creates an Express application. The express() function is a top-level function exported by the express module. var express = require('express') var app = express() Methods express.json([options]) This middleware is available in Ex
expressjs.com
์ปจํธ๋กค๋ฌ๋ const handleHome = (req,res)=>{~~~~} ์ ๊ฐ์ด "req,res" arguments๋ฅผ ํญ์ ๊ฐ์ง์ฑ๋ก ๋ง๋ค์ด์ง๋ค. req,res์ ํ๋กํผํฐ์ ๋ฉ์๋๋ ์๋๋ฅผ ์ฐธ๊ณ
https://expressjs.com/ko/4x/api.html#req
Express 4.x - API ์ฐธ์กฐ
Express 4.x API express() Creates an Express application. The express() function is a top-level function exported by the express module. var express = require('express') var app = express() Methods express.json([options]) This middleware is available in Ex
expressjs.com
๊ทธ๋ฆฌ๊ณ ์ฌ์คconst handleHome = (req,res)=>{~~~~} ์ฌ๊ธฐ์ ํ๋๋ฅผ ๋ ๊ฐ์ง์์๋ค. ๋ฐ๋ก next argument์ด๋ค.
const handleHome = (req,res,next)=>{
~~~~, next()}
next()๋ฅผ ์ ์์ ์ผ๋ก ์คํํ๊ณ ๋ค์ ์ฝ๋ฐฑํจ์๋ฅผ ์คํํ๋ ๊ฒ์ middleware ๋ผ๊ณ ํ๋ค. ์ฌ์ค ๋ชจ๋ ์ปจํธ๋กค๋ฌ๋ ๋ฏธ๋ค์จ์ด๊ฐ ๋ ์ ์๋ค.
ํ์ง๋ง ๊ด์ต์ ์ผ๋ก ๋ง์ง๋ง ์ปจํธ๋กค๋ฌ์๋ next๋ฅผ ๋ฃ์ง ์๋๋ค. next()๊ฐ ์๋ ๊ฒ์ ์ปจํธ๋กค๋ฌ๋ฅผ ํฅํ๋ ๋ฏธ๋ค์จ์ด๋ผ๊ณ ๋ณด๋ฉด ๋๋ค.
๋ชจ๋ get์์ฒญ์ ์ ๋ถ๋ค ๋ฏธ๋ค์จ์ด๋ฅผ ๋ณต๋ถํ๋ ๊ฒ์ ์ค์ํ๊ธฐ๋ ์ฝ๊ณ ๋งค์ฐ ๊ท์ฐฎ๋ค. app.use()๋ฅผ ํตํด ๊ธ๋ก๋ฒ ๋ฏธ๋ค์จ์ด๋ฅผ ๋ง๋ค ์ ์๋ค. ๋จ get์์ฒญ๋ณด๋ค ์์ ์ ํ์์ด์ผ ๋ฏธ๋ค์จ์ด๊ฐ ์ ๋๋ก ์๋ํ ๊ฒ์ด๋ค. ๋ชจ๋ ์์ฒญ์ ์์ logger middleware ๊ฐ ๋จผ์ ์คํ ๋ ๊ฒ์ด๋ค.
๋ฏธ๋ค์จ์ด๋ฅผ ์ง์ ๋ง๋ค์ด๋ ๋์ง๋ง, ํจํค์ง๋ฅผ ์ค์นํด์ importํด์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง๋ค.
'nodeJS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
DB์ nodeJS๊ฐ ์ด์ธ๋ฆฌ๊ธฐ ์ํด ํ์ํ ๊ฒ, async (0) | 2022.02.09 |
---|---|
๋ฐ์ ๋ฐ์ดํฐ๋ฅผ DB์ ์ ์ฅํด๋ณด์(mongoDB, mongoose) (0) | 2022.02.09 |
get ๊ณผ post, ๋ฐ์ดํฐ๋ฅผ ๋ฐฑ์๋๋ก ๊ฐ์ ธ์ค๋ ๋ฐฉ๋ฒ (0) | 2022.02.09 |
html ๋ ๋๋ง, pug? partial, conditional, iteration,mixin (0) | 2022.02.08 |
router and controller , URL parameter (0) | 2022.02.06 |