본문 바로가기

데브코스

Express 구조

Express 구조

express : 웹 프레임 워크, 내가 만들고 싶은 웹 서비스를 구현하는 데 필요한 모든 일을 틀 안에서 할 수 있는 것

➡️ express를 시작하는 방식은 두 가지가 있다. 직접 구조를 잡는 첫 번째 방법과 express-generator를 사용하여 기초 구조를 다 잡는 두 번째 방법이 있다. 

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}`)
})

앱은 서버를 시작하며 3000번 포트에서 연결을 청취한다. 앱은 루트 URL(/) 또는 라우트에 대한 요청에 “Hello World!”로 응답하고 다른 모든 경로에 대해서는 404 Not Found로 응답한다.

 

1️⃣ 직접 구조를 잡는 방식

const express = require('express')
const app = express()
app.listen(7777)

const userRouter = require('./routes/users')
const channelRouter = require('./routes/channels')

app.use("/",userRouter)
app.use("/channels",channelRouter)

2️⃣ generator 사용하기

 

bin > www 

var app = require('../app');
var debug = require('debug')('express-base:server'); //콘솔창에 log 찍음
var http = require('http');

모듈 가져오기

var port = normalizePort(process.env.PORT || '3000');
app.set('port', port);

포트 설정, 3000 이 기본 값

var server = http.createServer(app);

/**
 * Listen on provided port, on all network interfaces.
 */

server.listen(port);
server.on('error', onError);
server.on('listening', onListening);

서버 생성

 

app.js

var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

프로젝트 셋팅

app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));

미들웨어(http 외의 다른 모듈) 연결

module.exports = app;

모듈화

'데브코스' 카테고리의 다른 글

DB 테이블 생성 실습  (1) 2024.09.12
RDBMS  (2) 2024.09.11
채널 api 수정(+ router)  (0) 2024.09.10
채널 api 설계 ( 생성, 조회, 삭제, 수정 )  (1) 2024.09.09
회원 api 설계 ( 로그인 )  (0) 2024.09.09