[TIL]
[TIL] 2024.01.18 Node.js 입문
재호링
2024. 1. 18. 21:19
오늘 한 일
- 모듈 상대 경로 파악하기
- API와 REST API의 개념
- API Client 학습
- express 이해
1. 상대 경로
// libs/math
import math from './math.js';
// exception/base.exception
import baseException from '../exception/base.exception.js';
// middleware/authentication/autentication.middleware.js
import athentication from '../middleware/authentication/authentication.middleware.js'
math();
baseException();
athentication();
이 코드에서 ./math.js는 파일 경로를 나타내는데, ./으로 시작하는 경로는 ‘상대 경로’ 라는 것을 나타내게된다.
‘상대 경로’란 현재 파일의 위치에 따라 다르게 해석되는 파일 또는 디렉토리의 위치를 나타낸다.
위 코드는 run.js에 파일을 불러들이는건데, 같은 파일에 위치한 math.js는 .이 하나만 찍히는 걸 볼 수 있다.
../ 는 현재 파일이 위치한 디렉토리의 상위 디렉토리에서 불러온다는 의미이다.
쉽게 이해하자면, run.js 는 libs폴더에 math.js와 존재하므로 ./만 쓰면 되는 것이며,
base.exception.js와 authentication.middleware.js는 각각 exception폴더와 middleware, authentication 폴더에
위치해 있어 위의 코드와 같이 나타낼 수 있다.
2. API와 REST API의 개념
- API(Application Programming Interface)란 서로 다른 소프트웨어나 어플리케이션 간을 연결해주는 매개체이자 약속
- 우리가 작성할 API에서 원하는 데이터를 받아 데이터베이스에 데이터를 저장하고,
저장되어 있는 데이터를 읽어서 웹 어플리케이션(프론트엔드)에 데이터를 제공하는 행위를
통해 사용자가 원하는 목적을 이루는 것
- REST는 “Representational State Transfer”의 줄임 말
- REST(Representational State Transfer)는 월드 와이드 웹과 같은 분산 하이퍼미디어 시스템을 위해 네트워크 상에서 자원을 쉽고 명확하게 식별하고 조작할 수 있게 도와주는 소프트웨어 아키텍처의 한 형식이다.
3. API Client 학습
insomnia를 활용해 API 데이터 요청하기
4. express 이해
- Request란 클라이언트가 서버에게 전달하려는 정보나 메시지를 담는 객체를 의미합니다. Request의 세부 사항에는 URL, Http method, 헤더(header), 쿼리 파라미터(query parameter), 바디 데이터(body data) 등이 포함.
- Response란 서버에서 클라이언트로 응답 메시지를 전송시켜주는 객체
- Response의 세부 사항에는 상태 코드(status code), 응답 데이터(response data), 응답 헤더(response header) 등이 포함.
- 서버 모듈
- Node.js의 서버 모듈에는 대표적으로 http 모듈과 Express.js가 존재
- http 모듈은 Node.js에서 기본 제공하는 Http 서버 모듈.
- Express.js 는 http 모듈을 확장하여 제공합니다.
- Express.js 는 기존 http 모듈의 메서드도 사용할 수 있지만, Express.js가 추가
제공하는 메서드나 속성들을 사용할 수 있다. - 최근에는 Express.js의 메서드가 더욱 편리하기에 기존 http 모듈의 메서드는 잘 사용되고 있지 않다.