require
함수를 사용하여 다른 모듈을 불러올 수 있다.export
명령어를 변수나 함수 앞에 붙여 외부 모듈에서 해당 변수나 함수에 접근할 수 있다.import
, require
명령어를 사용하여 외부 모듈의 기능을 가져올 수 있다.서로 다른 시스템 간의 통신을 할 수 있게 해주는 중개자 역할
REST (Representational State Transfer)는 월드 와이드 웹과 같은 분산 하이퍼미디어 시스템을 위해 네트워크 상에서 자원을 쉽고 명확하게 식별하고 조작할 수 있게 도와주는 소프트웨어 아키텍처의 한 형식이다.
/goods
, 장바구니 -> /carts
GET
메서드는 조회와 관련이 있으므로 데이터를 읽는 작업, POST
메서드는 생성과 관련 있으므로 새로운 데이터를 생성하는 작업을 수행한다.# 일반적인 method 사용 방식
Create : 생성(POST)
Read : 조회(GET)
Update : 수정(PUT),(PATCH)
Delete : 삭제(DELETE)
Content-Type
이라는 헤더를 통해 표현 방법 서술router.get('/books', (req, res) => {
res.json({ success: true, data: getAllBooks() });
});
/books
라는 URL을 통해 전체 책 목록을 불러와 응답GET
은 리소스를 조회하는 역할을 담당하므로, 전체 책 목록을 조회하고, 그 결과를 JSON 형식으로 반환
클라이언트의 요청 조건(HTTP 메서드, 주소 등)에 대응해 응답하는 방식
클라이언트의 요청을 쉽게 처리할 수 있게 도와주는 Express.js의 기본 기능
router.METHOD(PATH, HANDLER);
router
: Express.js의 라우터를 정의한다.METHOD
: HTTP Method를 나타낸다. (get, post, put, patch, delete...)PATH
: 실제 서버에서 API를 사용하기 위한 경로HANDLER
: 라우트가 일치할 때 실행될 함수개발 단계에서 작성한 API의 요청을 확인하거나 테스팅 할 때 도움을 주는 툴
Postman
, Insomnia
가 있다.
- 클라이언트는 특정 URL과 데이터를 담은 요청을 서버에 전송
- 서버는 받은 데이터에 따라 필요한 비즈니스 로직 수행
- 서버는 처리된 결과를 클라이언트에게 응답