서버 기초

최정환·2021년 6월 22일
0

youtube-clone

목록 보기
1/3

package.json

scripts는 실행하고 싶은 것
dependencies에 해당하는 모듈 다 설치, 프로젝트가 작동하기 위해 필요한 것
devDependencies 개발자에게 필요한 dependencies


babel

최신 js를 컴파일 = nodejs가 js를 문제 없이 사용할 수 있게 컴파일 해줌
babel.config.json >> @babel/preset-env


server

항상 켜져 있는 온라인에 연결된 컴퓨터, request를 listen하고 있음
브라우저가 request하고 반응함
GET = 홈페이지를 가져와라
req,res는 express에서 나온것

return res.end();
res.end(); = res를 종료 시킴, res.send("~~"); = ()안에 있는 것을 보냄
};
get("route", handler) use listen

MiddleWare

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에 나타냄


Router

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);

CRUD

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"}

0개의 댓글