https://developer.mozilla.org/ko/docs/Learn/Server-side/Express_Nodejs
https://developer.mozilla.org/ko/docs/Learn/Server-side/First_steps
https://poiemaweb.com/express-basics
※ Express의 역할: 무엇을 "추상화" 해주는지 고민해보기
http://expressjs.com/en/starter/installing.html
// Install Express in the myapp directory
// Save it in the dependencies list
npm install express --save
yarn add express
const express = require('express')
const app = express();
const PORT = process.env.NODE_ENV === 'production' ? 3001: 3002
app.listen(PORT,()=>{
console.log(`server listen on ${PORT}`)
})
Request object(요청 객체), response object(응답 객체), next 함수에 접근할 수 있는 함수
(* next 함수: 호출되었을 때, stack에 있는 현재 middleware의 다음 middleware를 실행하는 express router의 함수)
// elements of middleware function call
var express = require('express');
var app = express();
app.get('/',function(req, res, next) {
// Calling this function invokes next middleware function in app
next();
})
app.listen(3000);
var express = require('express')
var app = express()
var myLogger = function (req, res, next) {
console.log('LOGGED')
next()
}
// To load the middleware function, call app.user()
// Every time the app receives a request, it prints the message “LOGGED” to the terminal.
app.use(myLogger)
app.get('/', function (req, res) {
res.send('Hello World!')
})
app.listen(3000)
※ req.on('data',()=>{}) 없이 data 받는 법
https://www.npmjs.com/package/body-parser
※ CORS header 설정 쉽게 하는 법
https://www.npmjs.com/package/cors
const router = express().Router()
router.get('/classes/messages',(req,res)=>{
res.send(messages)
})
router.post('/classes/messages',(req,res)=>{
// your code here
})
http://expressjs.com/en/starter/hello-world.html
const express = require('express');
const app = express();
const port = 3000
app.get('/', (req, res) => res.send('Hello World!'));
app.listen(port, () => console.log(`Example app listening on port ${port}!`))
/* 서버는 port 3000에서 사용자의 접속 대기 중.
/ 클라이언트가 GET 방식으로 루트 URL(http://localhost:3000/)에 요청을 보내면 서버는 ‘Hello World!’로 응답할 것 */