-
Express 서버 만들기 ApplicationFrameWork/Express.js 2022. 8. 3. 16:13
개발의 존성을 위한 nodemon
npm i nodemon --save-dev
현재 개발 computer에서는 nodemon이 global로 설치가 되었지만, 프로젝트를 다른 개발자와 공유했을 때 그 개발자의 computer에는 nodemon이 없을 수도 있으므로 위 터미널 명령어로 개발자 mode에서는 nodemon이 필요하다는 것을 명시해준다.
그 뒤에 package.json에 들어가면 "devDepsendencies"에 nodemon이 추가 된 것을 확인 할 수 잇다.
초간단 server 구축하기
import express from "express"; const app = express(); app.listen(8080);
computer에는 IP가 있고 여러개의 port가 있다. 그 port중에 관심이 있는 어플리케이션을 listen하고 또 접속할 수 있다.
*IP : server가 어디있는지 알 수 있다.
*Port : 그 server에 어떤 application에 접속할 수 있는지를 나타낸다.
Server 동작확인
브라우저를 통해 해당 url에 접속해보면 다음과 같은 화면을 확인할 수 있다. 즉 아직 처리하는 것은 없지만 application server가 정상적으로 동작하는 것을 확인할 수 있다.
이제 server가 가동되는 상태에서 원하는 middleware 즉 callback함수를 원하는 경로(URL)이면서, 원하는 메서드에 등록해주면 된다.
모든 메서드에 대해서 듣고 싶다면 app.use()혹은 app.all()을 사용하면 된다. 이 두개는 비슷한데 살짝 차이가 존재한다.
root 경로 등록하기
import express from "express"; const app = express(); app.get("/", (req, res, next) => { console.log("get"); }); app.listen(8080);
우선 get()메서드로 root경로에 listen하고 싶은 callback함수를 등록하면 되는데, 인자로는 req,res,next가 있다.
app에서 할 수 있는 것
import express from "express"; const app = express(); app.get("/", (req, res, next) => { console.log("get"); }); app.listen(8080);
app에서 원하는 특정한 HTTP 메소드에 대해서 listen할 수 있고, 또 해당 메소드에 매치될 URL를 지정할 수 있고, middleware인 callbakc함수를 등록할 수 있다.
그리고 전달되는 request를 통해서 요청에 대한 정보를 확인한 다음에 response를 통해서 client에게 data를 전달 해주면 된다.
Application을 통해서 처리할 수 있는 메서드(HTTP)
app.all()
app.all(path,callbak[,callback.....])
all()은 말 그대로 HTTP 모든 메서드에 대해서 listen하고, 처리하고 싶을 때 사용할 수 있다.
app.enable(name)
app.enable('trust proxy') app.get('trust proxy') // => true
app.enabled(name)
app.enabled('trust proxy') // => false app.enable('trust proxy') app.enabled('trust proxy') // => true
app.use()
app.use([path],callbak[,callback....])
app.use()와 app.all()은 어떤 HTTP 요청에든 상관없이 지정한 경로나 또는 경로(URL)를 지정하지 않으면, 모든 경로(URL)에 대해서 원하는 callback함수를 수행해준다.
use()와 all()은 비슷하지만 살짝 다르다.
[출처 -https://academy.dream-coding.com/courses/node ]
'FrameWork > Express.js' 카테고리의 다른 글
ExpressJS - express.js 활용1(next활용법, 자주 쓰는 미들웨어) (0) 2024.03.19 ExpressJS - express.js 서버 시작하기(setting, 미들웨어) (0) 2024.03.18 express - Middleware(미들웨어)1 (0) 2023.02.15 Express 미들웨어에 중요한 특징 (0) 2022.08.04 Express 개요 (0) 2022.08.03