express
Node.js๋ฅผ ์ํ ์น ์ ํ๋ฆฌ์ผ์ด์
ํ๋ ์์ํฌ
์ ์
โข
๋น ๋ฅด๊ณ ๊ฐํธํ ๋ฐฉ์์ผ๋ก ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ๋ฐํ ์ ์๊ฒ ํด์ค๋๋ค.
โข
๋ผ์ฐํ
, ๋ฏธ๋ค์จ์ด, ํ
ํ๋ฆฟ ์์ง ๋ฑ ๋ค์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ๊ฐ๋ฐ์๊ฐ ์ ์ฐํ๊ฒ ์น ์ ํ๋ฆฌ์ผ์ด์
์ ๊ตฌ์ถํ ์ ์์ต๋๋ค.
์ฃผ์๊ธฐ๋ฅ
๊ธฐ๋ฅ | ์ค๋ช
|
์ต์ํ์ ๊ธฐ๋ฅ | ํต์ฌ์ ์ธ ์น ์ ํ๋ฆฌ์ผ์ด์
๊ธฐ๋ฅ๋ง ์ ๊ณตํ์ฌ ๊ฐ๋ฐ์๊ฐ ์์ ์ ์๊ตฌ์ ๋ง๊ฒ ํ๋ ์์ํฌ๋ฅผ ์ฝ๊ฒ ์ปค์คํฐ๋ง์ด์งํ ์ ์์ต๋๋ค. |
๋ผ์ฐํ
| ์ฌ์ฉ์์ ์์ฒญ์ ํน์ ํธ๋ค๋ฌ๋ก ๋งคํํฉ๋๋ค. |
๋ฏธ๋ค์จ์ด | ์์ฒญ๊ณผ ์๋ต์ ์ฒ๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋๋ ํจ์์
๋๋ค. ๋ก๊น
, ์ธ์ฆ, ์ฝํ
์ธ ํ์ ๋ฑ ๋ค์ํ ์ฉ๋๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค. |
ํ
ํ๋ฆฟ | ์ ํ๋ฆฌ์ผ์ด์
์ ๋์ ์ฝํ
์ธ ๋ฅผ ์์ฑํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. |
ํ
์คํธ | ๋ชจ๋์ ์ค๊ณ์ ํ๋ฐํ ๊ฐ๋ฐ์ ์ปค๋ฎค๋ํฐ ๋๋ถ์ ํ
์คํธํ๊ธฐ ์ฝ์ต๋๋ค. |
express ์ค์น
์ฌ์ ์ค์น : node
express ๋ npm ๋ช
๋ น์ผ๋ก ์ค์นํฉ๋๋ค.
npm install express
Shell
๋ณต์ฌ
express ํ๋ก์ ํธ ์์ฑ ๋ฐ ์คํ
๐ฆ start
|-- ๐ฆpublic
| |-- ๐ index.html
| |-- ๐ styles.css
|-- ๐ app.js
|-- ๐ package.json
JavaScript
๋ณต์ฌ
1.
npm init
2.
app.js
3.
index.html
4.
package.json
npm init
npm init
Shell
๋ณต์ฌ
npm init ๋ช
๋ น์ด๋ Node.js ํ๋ก์ ํธ๋ฅผ ์์ํ ๋ ์ฌ์ฉํ๋ ๋ช
๋ น์ด๋ก, package.json ํ์ผ์ ์์ฑํฉ๋๋ค. ์ด ํ์ผ์ ํ๋ก์ ํธ์ ๋ฉํ๋ฐ์ดํฐ์ ์์กด์ฑ ํจํค์ง ์ ๋ณด๋ฅผ ๋ด๊ณ ์์ต๋๋ค. npm init์ ํ๋ก์ ํธ๋ฅผ ์ด๊ธฐํํ ๋ ์ฌ๋ฌ ๊ฐ์ง ์ค์ ์ ์
๋ ฅ๋ฐ์ package.json ํ์ผ์ ์์ฑํ๋ฏ๋ก, Express.js ํ๋ก์ ํธ์์๋ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
app.js
const express = require('express');
const path = require('path');
const app = express();
const port = 3000;
// ์ ์ ํ์ผ ์ ๊ณต
app.use(express.static(path.join(__dirname, 'public')));
// ๋ฃจํธ ๊ฒฝ๋ก์ ์ ๊ทผํ๋ฉด index.html์ ์๋ต
app.get('/', (req, res) => {
res.sendFile(path.join(__dirname, 'public', 'index.html'));
});
app.listen(port, () => {
console.log(`Example app listening on port ${port}`);
});
JavaScript
๋ณต์ฌ
./public/index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Express.js Example</title>
</head>
<body>
<h1>Hello, Express.js!</h1>
</body>
</html>
HTML
๋ณต์ฌ
package.json
{
"name": "express",
"version": "1.0.0",
"description": "hello express",
"main": "app.js",
"scripts": {
"start": "node app.js"
},
"author": "joeun",
"license": "ISC",
"dependencies": {
"express": "^4.18.2"
}
}
JavaScript
๋ณต์ฌ
์๋ฒ ์คํ
node app
Shell
๋ณต์ฌ
npm start
Shell
๋ณต์ฌ
package.json ์ scripts ์์ฑ์ start ๋ช
๋ น์ ์คํ์ํต๋๋ค.