라우터(5)
-
[유튜브 클론코딩] 2.12 Recap(복습,중간점검)
2.12 Recap(복습,중간점검) userRouter와 videoRouter도 완성하기 일단, 지난 시간에 globalRouter를 완성한 것 처럼, userRouter와 videoRouter도 완성한다. userController와 videoController에서 각각 필요한 함수를 작성하고 export해서 userRouter와 videoRouter에서 import하여 사용한다. ↑app.js ↑ userRouter.js 이 때 npm start를 해보면, localhost:4000/users가 아니라 localhost:4000/users/users 해야 접속이 되는 것을 볼 수가 있는데, 이는 app.js에서 routes.users라고 되어 있기 때문이다. 즉, app.js에서 app.use("/u..
2021.02.17 -
[유튜브 클론코딩] 2.11 MVC Pattern - Part. 3
2.11 MVC Pattern - Part. 3 컨트롤러 만들기(Controller) 이제 여기 이 구조에서 자유로워지기 위해 controller를 사용할 차례이다. 컨트롤러는 어떤 일이 어떻게 발생하는지에 관한 로직이다. 여기에 있는 모든 함수들을 말하는 것이다. 여기 이 함수들을 모두 컨트롤러에 담을 것이다. 1) controllers 폴더를 만든다. 그리고 그 안에는 비디오 컨트롤러(videoController.js)와 유저 컨트롤러(userController.js) 이렇게 두 개의 컨트롤러를 만들 것이다. 대게 프로젝트에 있는 각 모델마다 컨트롤러를 만들게 된다. route에는 global , users, videos가 있고 global 안에는 home, join, login,logout, sea..
2021.02.16 -
[유튜브 클론코딩] 2.10 MVC Pattern - Part. 2
2.10 MVC Pattern - Part. 2 그냥 별거아닌데 app.js에서 경로만 /users, /videos로 바꾸고 시작! URL 만들기(routes.js) routes.js 파일을 만든다. → 쪼개서 처리하는 것이 좋기 때문, 나중에 다른 곳에서 같은 URL을 사용해야할 수도 있다. 어딘가 다른데서 사용하려면 이 구조를 내가 외워야 한다는 것이다. 좀 더 편하기 위해 URL을 변수로 선언해서 모아놓은 routes.js 파일을 작성한다. routes.js파일을 만들어서, 어디에서든 이 URL을 불러다 쓸것이다. (왜 그런지는 나중에 보게 될 것이다.) // GLobal(전역적인 것들) const HOME = "/"; const JOIN = "/join"; const LOGIN = "/login"..
2021.02.16 -
[유튜브 클론코딩] 2.9 MVC Pattern - Part. 1
2.9 MVC Pattern - Part. 1 MVC 패턴 지금까지 미들웨어,라우팅에 대해서 알아봤고 이제 MVC를 알아볼 것이다. - MVC: Model, View, Control을 의미한다. Model: 데이터 View: 데이터가 어떻게 생겼는지 Controller: 데이터를 보여주는 함수(데이터를 찾는 함수) MVC는 패턴이다. 패턴은 일종의 끝내주는 구조 같은 것 userRouter.js , videoRouter.js 만들기(URL과 함수를 분리하기 위해) 1. app.js에서 이 주석 처리한 부분들을 삭제한다.↑(왜냐하면 라우터로 만들어줄 거기 때문에) 2. router.js -> userRouter.js로 이름을 변경하고(뭐 무슨 import창뜨는데 ok함) 3. videoRouter.js도 ..
2021.02.16 -
[유튜브 클론코딩] 2.8 Express Core : Routing
2.8 Express Core : Routing 새로운 파일을 만든다.(init.js) index.js → app.js로 파일 이름을 바꾼다. app.js에서 일부분 삭제한다. (왜냐면 저 부분을 init.js에서 작성할거기 때문에) (↑주석처리된 부분을 지우는 것이다) init.js에서 application을 시작하도록 한다 자바스크립트 ES6에는 흥미로운 부분이 있는데, 모듈이라는게 있어서 우리 코드를 공유할 수 있다.다른 파일에서의 코드를 가져다가 사용할 수 있다. 예를 들어, app.js에서 express, morgan, helmet 등등을 불러 썼었는데 이것들도 어딘가에서 불러온 것이다.(import) express,morgan,helmet 같은 것들은 node_modules 안에서 찾아온 것 ..
2021.02.16