scripts는 실행하고 싶은 것
dependencies에 해당하는 모듈 다 설치, 프로젝트가 작동하기 위해 필요한 것
devDependencies 개발자에게 필요한 dependencies
최신 js를 컴파일 = nodejs가 js를 문제 없이 사용할 수 있게 컴파일 해줌
babel.config.json >> @babel/preset-env
항상 켜져 있는 온라인에 연결된 컴퓨터, request를 listen하고 있음
브라우저가 request하고 반응함
GET = 홈페이지를 가져와라
req,res는 express에서 나온것
return res.end();
res.end(); = res를 종료 시킴, res.send("~~"); = ()안에 있는 것을 보냄
};
get("route", handler) use listen
req <> middleware <> res
미들웨어 안에 있는 next가 없는 return은 미들웨어를 중단 시킴
다음 것을 실행시키지 않음 따라서 마지막 controller은 next를 안씀
res.send는 마지막에 하나만, use나 get안에 많은 middleware가 있어도 처음 send만 실행함
use안에 미들웨어를 순서대로 넣어서 사용하면 후에 쓰는 get안에 미들웨어로서 안넣어도 됨
morgan("dev")은 middleware(res,req,next를 가진 function)을 return해줌
이것은 method, route, status code, 응답시간을 console log에 나타냄
app.use("/",global) >> global.get("/home",~~)
videoRouter.route("/:id(\\d+)").get(getEdit).post(postEdit);
// 아래 두개와 위는 같은 뜻
videoRouter.get("/:id(\\d+)/edit", getEdit);
videoRouter.post("/:id(\\d+)/edit", postEdit);
Create, Read, Update, Delete
ex) www.ee.com/post/23/jug?title=hello
req.params = route에서 예정되어 있는 value ex) { id:"23",name:"jug"}
req.body = request body에 key-value의 데이터가 담긴 객체 프로퍼티, JSON 객체에 접근 가능
req.query = url 뒤 query문 => {title:"hello"}