REST API란?

박지성 학부생·2023년 7월 27일
0

BackEnd Develop log

목록 보기
11/27
post-thumbnail

REST API란?

Representational State Transfer API의 약자로, 웹 기반의 소프트웨어 시스템 간에 데이터를 주고받기 위한 인터페이스

REST는 문서, 그림, 데이터 등의 자원을 이름으로 구분해서 해당 자원에 대한 상태, 정보를 주고받는 것. 또한 HTTP Method를 활용해서 해당 자원에 대한 CRUD를 적용하는 것을 의미한다.

example

GET /api/challenges/{challengeId}/certfeeds 
챌린지 인증피드 목록 조회

POST /api/challenges/{challengeId}/certfeeds 
챌린지 인증피드 목록 등록

GET /api/challenges/{challengeId}/certfeeds/{id} 
챌린지 인증피드 상세 조회

PUT /api/challenges/{challengeId}/certfeeds/{id} 
챌린지 인증피드 수정

DELETE /api/challenges/{challengeId}/certfeeds/{id} 
챌린지 인증피드 삭제

GET /api/challenges/{challengeId}/certfeeds/{id}/comments 
인증피드 댓글 목록 불러오기

POST /api/challenges/{challengeId}/certfeeds/{id}/comments 
인증피드 댓글 등록

PUT /api/challenges/{challengeId}/certfeeds/{id}/comments/{commentId}
인증피드 댓글 등록

DELETE /api/challenges/{challengeId}/certfeeds/{id}/comments/{commentId}
인증피드 댓글 삭제

POST /api/challenges/{challengeId}/certfeeds/{id}/like
챌린지 인증피드 좋아요하기

DELETE /api/challenges/{challengeId}/certfeeds/{id}/like
챌린지 인증피드 좋아요 삭제

{}로 묶인 부분은 URL에서 경로 변수(Path Variable)라고 합니다. RESTful API에서는 경로 변수를 사용하여 동적인 정보를 URL에 포함시킬 수 있다.

여기서의 URL은 /api/challenges/{challengeId}/certfeeds/{id}/comments

이다. 이 URL에서 {challengeId}{id}는 경로 변수로, 실제 값으로 대체되어 사용된다. 클라이언트가 요청할 때 실제로 원하는 도전과 인증피드의 댓글 목록을 가져오기 위해 해당 경로 변수에 원하는 값을 넣어 요청한다.

예를 들어, 클라이언트가 도전 ID가 123이고 인증피드의 ID가 456인 댓글 목록을 가져오려면 아래와 같이 요청을 보낼 수 있다.

GET /api/challenges/123/certfeeds/456/comments

서버는 이 요청을 받으면 경로 변수에 들어있는 값을 읽어 해당 도전과 인증피드의 댓글 목록을 찾아서 응답한다.
경로 변수를 사용하여 요청하는 방식으로, 클라이언트는 동적인 데이터를 특정 API 엔드포인트에 요청할 수 있게 된다.

정리하자면 REST API는 HTTP 요청을 할 때 어떤 URI에 어떤 method를 사용할지에 대한 개발자들 사이에서 널리 사용되어지는 약속이다.

  • URI는 리소스를 고유하게 식별하는 문자열을 의미하고, URL은 특정 서버의 파일 경로 또는 주소를 나타내는 URI의 형태이다.
profile
참 되게 살자

0개의 댓글