๋ชฉ์ฐจ
//server.js
const express = require('express')
const app = express()
//PORT ์ด๊ธฐ
app.listen(8080, ()=>{
console.log('http://localhost:8080 ์์ ์๋ฒ ์คํ์ค!');
})
//root์์ GET์์ฒญ(์ ์)์ ๋ ๋๋งํ ๋ด์ฉ
app.get('/', (req, res)=>{
res.send("HELLO!!");
})
์ ๋ฒ ํฌ์คํธ์์ ๊ฐ๋จํ๊ฒ ์๋ฒ๋ฅผ ๋ง๋ค์ด๋ณด์๋ค.
๋จ ํ๊ฐ์ ํ์ด์ง๋ง ์ ์ํ์๋๋ฐ ์ฌ๋ฌ ํ์ด์ง๋ฅผ ๋ง๋ค๊ณ ์ถ๋ค๋ฉด ์ด๋ป๊ฒ ํด์ผํ ๊น?
1. ์๋ก์ด ํ์ด์ง ๋ง๋๋ ค๋ฉด?
ํ์ด์ง๋ฅผ ์ด๋ป๊ฒ ๋ง๋ค๊น?
์ฐ๋ฆฌ๋ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ด๊ณ ์ฌ์ดํธ์ ์ ์ํ ๋ URL์ ์ด์ฉํ๋ค. ์ด์ ๋ํด์ ๊ฐ๋จํ๊ฒ ์ดํด๋ณด์.
1) URL
URL์ ๊ตฌ์ฑโผ
์์ ๊ตฌ์ฑ์ ๊ฐ๋ URL์์ ํ์ด์ง๋ฅผ ๋๋๋ ๊ฒ์ path์ด๋ค.
์๋ฅผ ๋ค์ด ๋ด์ค ํ์ด์ง๋ /news, ์คํฌ์ธ ํ์ด์ง๋ /sports ๋ฑ์ผ๋ก ๋ง๋ค ์ ์๋ค.
2. NodeJS์์ ์๋ก์ด ํ์ด์ง ๋ง๋ค๊ธฐ
1) ์๋ก์ด path ์์ฑ
์ด์ NodeJS์์ ํ์ด์ง ์ฆ, path๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์์๋ณด์.
app.get('/path๋ช
', (req, res)=>{ //req, res๋ ์์ ํ๋ผ๋ฏธํฐ๋ช
!
res.send("์ ์ ์ ๋ณด๋ผ ๋ด์ฉ");
})
์ฆ, ์์์ ์ฒ์์ผ๋ก ์๋ฒ๋ฅผ ๋ง๋ค๋ ์์ฑํ๋ ์๋์ ์ฝ๋๋ ๊ฐ์ ๋ฐฉ๋ฒ์ธ ๊ฒ์ ์ ์ ์๋ค.
๋จ์ง path๊ฐ '/' ์ธ ๋ฉ์ธ ํ์ด์ง๋ก์ ์ ์์ ๋ํ ์ฒ๋ฆฌ์ธ ๊ฒ์ด๋ค.
app.get('/', (req, res)=>{
res.send("HELLO!!");
})
2) html ํ์ผ ์ ์กํ๊ธฐ
์ง๊ธ๊น์ง๋ ์ ์์ ์์ฒญํ์๋ ๊ฐ๋จํ ํ ์คํธ๋ฅผ ๋ฐํํ๋ค.
์ด๋ฒ์๋ html ํ์ผ์ ์ ์กํด๋ณด์.
(1) html ํ์ผ ์์ฑ
๋จผ์ html ํ์ผ์ ์์ฑํ๋ค. (๊ฐ๋จํ ํ๋ก์ ํธ๋๊น ์ผ๋จ ์ด๋ ๊ฒ!)
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<h2>Hello Stranger!</h2>
</body>
</html>
(2) jsํ์ผ ์์
์๋์ ํ์ผ์ ์์ ํด๋ณด์!
//server.js
const express = require('express')
const app = express()
//PORT ์ด๊ธฐ
app.listen(8080, ()=>{
console.log('http://localhost:8080 ์์ ์๋ฒ ์คํ์ค!');
})
//root์์ GET์์ฒญ(์ ์)์ ๋ ๋๋งํ ๋ด์ฉ
app.get('/', (req, res)=>{
res.send("HELLO!!");
})
res.sendFile(ํ์ผ๊ฒฝ๋ก)
sendFile()์ ํ์ผ์ ๋ ๋๋งํ๋ ํจ์์ด๋ค. ์ธ์์ ํ์ผ ๊ฒฝ๋ก๋ฅผ ์ ๋ฌํ๋ค.
//root์์ GET์์ฒญ(์ ์)์ ๋ ๋๋งํ ๋ด์ฉ
app.get('/', (req, res)=>{
res.sendFile(__dirname + "/index.html");
})
[ ํ์ผ ๊ฒฝ๋ก ]
โ __dirname : ํ์ฌ ํ์ผ์ ์ ๋ ๊ฒฝ๋ก๋ฅผ ๋ฐํํ๋ค.
โก "/index.html" : ๋ ๋๋งํ ํ์ผ์ธ index.html์ ํ์ฌ ํ์ผ(server.js) ๊ธฐ์ค ๊ฐ์ ๋๋ ํ ๋ฆฌ์ ์์ผ๋ฏ๋ก ์ด์๊ฐ์ด ์์ฑํ๋ค.
๊ฒฐ๊ณผ
์๋์จ๋ค!
'๐ | WEB DEV > NodeJS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[NodeJS+Express] 3.์ ์ ํ์ผ ๋ฃ์ด์ฃผ๊ธฐ (cssํ์ผ ๋ฑ๋ก) & Bootstrap ์ด์ฉํ๊ธฐ (0) | 2023.09.23 |
---|---|
[NodeJS+Express] nodemon์ผ๋ก ์๋ํํ๊ธฐ (0) | 2023.09.23 |
[NodeJS+Express] 1. NodeJS, Express ์ธํ (0) | 2023.09.22 |
[NodeJS] 2. ๋ ธ๋์ ํน์ฑ (1) | 2023.09.17 |
[NodeJS] 1. ๋ ธ๋์ ์ ์ (0) | 2023.09.15 |
๋๊ธ