📁 express 설치
📌 'http' vs 'express'
- http : 웹 서버처럼 활동할 수 있는 모듈. 웹 서버 역할을 하게 만드는 친구. 내장 모듈
- express 모듈 안에 http가 포함되어 있음

const express = require('express')
const app = express()
app.get('/', function (req, res) {
res.send('Hello World')
})
app.listen(3000)
- 포트 번호 (port number)
- ex. 각 회사 체계 서비스 번호 - 1234
📁 express REST API
📌 실습
const express = require('express')
const app = express()
app.get('/', function (req, res) {
res.send('Hello World')
})
app.get('/test', function(req, res) {
res.send('TEST SUCCESS')
})
app.get('/test/1', function(req, res) {
res.send('One!!')
})
app.listen(3000)
📌 응용
const express = require('express')
const app = express()
app.listen(3000)
app.get('/', function (req, res) {
res.send('Hello World')
})
app.get('/test', function(req, res) {
res.send('TEST SUCCESS')
})
app.get('/test/1', function(req, res) {
res.send('One!!')
})
app.get('/hello', function(req, res) {
res.send('안녕하세요')
})
app.get('/bye', function(req, res) {
res.send('안녕히 가세요')
})
app.get('/nicetomeetyou', function(req, res) {
res.send('만나서 반갑습니다')
})
📁 객체
📌 객체란?
- 데이터를 하나씩 X ⇒ 데이터를 모아 모아 덩어리로 보내겠다!
- "객체"
ex. "Node.js를 공부해보자. 라는 책"의 데이터 덩어리들
- 상품명 : Node.js를 공부해보자
- 상품 가격 : 20000
- 상품 소개 : 이 책 좋음 왜? 임한비 지음
- 우리 세상이 객체로 이루어져 있습니다.
- '주어 자리에 왔을 때 문장이 만들어지면 그건 다 객체다'
✏ 따라서 텍스트 말고 자바스크립트 객체로 보내기.
📌 Json이란?
app.get('/products/1', function(req, res) {
res.send('Node.js를 배워보자 (책)')
})
- 이렇게 두 정보를 보내고 싶어도 두 개 보낼 수 없음
- JavaScript Object Notation (자바스크립트 객체 모양)
- : 자바스크립트 객체가 어떻게 생겼냐 = 어떤 형태인가
let person = {
name : "hanbi",
age : 21
}
let nodejsBook = {
title : "Node.js를 공부해보자",
price : 20000,
description : "이 책 좋음 왜? 임한비가 지음"
}
function print(book) {
console.log(book.title)
console.log(book.price)
console.log(book.description)
}
print(nodejsBook)

📌 객체로 보내기
const express = require('express')
const app = express()
app.listen(3000)
app.get('/hello', function(req, res) {
res.json({
say : '안녕하세요'
})
})
app.get('/bye', function(req, res) {
res.json({
say : '안녕히 가세요'
})
})
app.get('/nicetomeetyou', function(req, res) {
res.json({
say : '만나서 반갑습니다'
})
})
const express = require('express')
const app = express()
app.listen(3000)
let nodejsBook = {
title : "Node.js를 공부해보자",
price : 20000,
description : "이 책 좋음 왜? 임한비가 지음"
}
app.get('/products/1', function(req, res) {
res.json(nodejsBook)
})
const express = require('express')
const app = express()
app.listen(3000)
app.get('/products/1', function(req, res) {
res.json({
num : 1
})
})
app.get('/products/2', function(req, res) {
res.json({
num : 2
})
})
app.get('/products/3', function(req, res) {
res.json({
num : 3
})
})
- 만약 num 값을 1000까지 늘린다면, 이렇게 손으로 일일이 써주기 힘듦 (하드코딩)
- url에 날라오는 값을 이용...
- ⇒ products 뒤에 오는 숫자를 변수로 담아서 쓰면 되지 않을까? (하드코딩하지 않고도 사용 가능)
const express = require('express')
const app = express()
app.listen(3000)
app.get('/products/:n', function(req, res) {
res.json({
num : n
})
})

const express = require('express')
const app = express()
app.listen(3000)
app.get('/products/:n', function(req, res) {
res.json({
num : req.params.n
})
})
req.params ⇒ params라는 변수에 네가 담아준 값을 담아올거야..~ 라는 뜻.