TIL

내일배움캠프 4주차 화요일 TIL

news0516 2024. 11. 19. 19:37

Node.js 환경에서 Express 프레임워크를 사용하여 간단한 웹 서버를 설정

import express from 'express'; // Express 모듈 가져오기(서버 구축)
import goodsRouter from './routes/goods.js'; // goods.js 파일에서 goodsrouter를 가져온다

const app = express(); 	// Express 함수를 호출
const PORT = 3000; 	 // 서버가 수신 대기할 포트 번호를 3000으로 설정, 포트 >> 실행할 프로그램의 주소?

app.get('/', function(req, res) {
  res.send('Hello World123!'); 
}); // 루트 경로(/)에 대한 GET 요청을 처리하는 함수

app.get('/hi', function(req, res) {
  res.send('hi');
});  // 루트 경로(/hi)에 대한 GET 요청을 처리하는 함수


app.use('/api', [goodsRouter]);

app.listen(PORT, () => {
  console.log(PORT, '포트로 서버가 열렸어요!');
}); //서버를 시작하고 지정된 포트 3000 에서 요청 수신 대기, 서버 시작 시 메시지 출력

function get() {
  return "Hello World123!"
}
const result = get();
console.log(result);



- REST API
웹에서 자원을 정의하고 자원에 대한 행위를 HTTP 메서드를 통해 수행하는 아키텍처 스타일
REST API는 URL을 통해 자원을 식별한다. 예를 들어, /api/goods는 상품 자원을 나타낼 수 있음
HTTP 메서드(GET, POST, PUT, DELETE 등)를 사용하여 자원에 대한 CRUD 작업 수행

- Module
 Node.js에서 코드의 재사용성을 높이기 위해 사용되는 구조
goodsRouter는 모듈로 정의된 라우터
./routes/goods.js 파일에서 라우터를 정의하고, 이를 import하여 사용
 라우터의 코드가 메인 애플리케이션 코드와 분리되어 관리되므로, 유지보수와 확장이 용이

- Express
Node.js를 위한 웹 애플리케이션 프레임워크. 서버 구축을 도와줌
미들웨어: 요청과 응답 객체를 처리하는 함수로, 요청을 가로채거나 수정 가능
라우팅: URL 경로에 따라 요청을 처리하는 기능 제공
템플릿 엔진: 동적인 HTML 페이지를 생성할 수 있도록 지원

위 코드에서 express()를 호출하여 애플리케이션 인스턴스를 생성하고, 
app.get() 메서드를 사용하여 특정 경로에 대한 요청을 처리하는 라우트를 정의
app.listen() 메서드를 통해 서버를 시작하고, 지정된 포트에서 요청을 수신 대기

- Router
Express 애플리케이션에서 요청 처리 경로를 정의하는 객체
라우터 사용 시 코드 구조 정리, 관련된 경로 그룹화 가능
 goodsRouter는 ./routes/goods.js 파일에서 가져온 라우터  > /api 경로에 연결

강의만으로 실습한 코드가 어떤 의미인지, 기본적인 흐름이 어떠한지 잘 이해가되지 않아 어려움이 많았지만, 튜터님의 도움으로 위 정리한 내용들이 어떻게 쓰였는지 이해할 수 있었다.

이번주 Node.js입문, 숙련 강의 완강을 목표로 수강에 집중할 예정