Endpoint
http://3.36.72.17:3000
- root-endpoint(혹은 root-URL): API로 요청을 서버와 통신할 때, 서버가 요청을 수락하는 시작점 뜻함.
Github API의 루트 엔드포인트는 https://api.github.com 이고 트위터 API는 https://api.twitter.com 이다.
일반적으로 root-endpoint는 도메인 주소의 루트( / ) 를 가리킴.
마찬가지로 Message States Server 의 URL을 기준으로 파악할 수 있는 root-endpoint는
Message States Server 의 가장 마지막 Location인 호스트의 루트( / ) 임.
- path: path(또는 url-path)는 API를 통해 서버와 통신할 때, 서버와 통신할 수 있는 key 역할을 함.
서버에 정의된 문자열에 따라 path가 달라지는데 예를 들어, https://api.github.com/user 에서는 'user'가 path이다.
메세지 조회
Request
GET /{githubID}/messages // githubID가 작성한 모든 메세지를 조회
이 요청에는 추가적인 파라미터(query parameter)를 사용할 수 있음. 파라미터는 다음과 같이 사용할 수 있음.
- /kimcoding/messages?roomname=로비
parameter | 형식 | 설명 | 필수 포함 여부 |
roomname | 방 이름(문자열) | 특정 roomname만 조회 | 필수 아님 |
[표] 파라미터 정보
Response
응답은 다음과 같은 JSON 형식
[
{
"id": 1,
"username": "김코딩",
"text": "안녕하세요",
"roomname": "로비",
"date": "2021-07-28T03:54:21.134"
},
// ...여러 개의 메시지
]
메시지에서 사용하는 속성은 다음과 같음.
parameter | 형식 | 설명 |
id | 숫자 | 고유한 아이디 |
username | 문자열 | 사용자 이름 |
text | 문자열 | 본문 내용 |
roomname | 문자열 | 방 이름 |
date | 문자열 | 작성한 시간 |
메세지 추가
Request
POST /{githubID}/messages
[요청] githubID가 작성한 메시지를 생성합니다. 메세지는 24시간마다 자동으로 리셋됨.
요청 본문엔 다음 내용을 반드시 포함해야 합니다.
- 요청 형식: JSON
- MIME 타입: application/json
parameter | 형식 | 설명 | 필수 포함 여부 |
username | 문자열 | 사용자 이름 | 필수 |
text | 문자열 | 본문 내용 | 필수 |
roomname | 문자열 | 방 이름 | 필수 |
[표] 파라미터 정보
Response
응답은 다음과 같은 JSON 형식입니다.
{
"id": 5
}
[데이터] Request에 따른 Response 예시
id는 숫자 형식이며, 새로 생성된 메시지의 고유한 ID값입니다.
메세지 초기화
Request
POST /{githubID}/clear
[요청] githubID가 작성한 메시지를 초기화합니다.
요청 본문은 필요하지 않습니다.
Response
응답은 다음과 같은 JSON 형식입니다.
{
"message": "message initialized!"
}
[데이터] Request에 따른 Response 예시\
스프린트
Message State 요청
이번 챕터는 Postman으로 API를 직접 테스트합니다.
REST API 문서를 읽는 법과 요청을 사용하는 법, message states Server 의 API 문서까지 살펴보았습니다. 이 경험을 참고하여 HTTP 요청을 보내고 결과를 확인하세요.
Bare minimum Requirements
- message states Server에 GET 요청을 하고, 응답을 확인합니다.
- message states Server에 /{githubID}/messages 으로 POST 요청을 하고, 응답을 확인합니다.
- POST 요청이 성공하면, 서버에 전부 저장됩니다. 서버에 요청을 보낸 githubID를 통해 이번 스프린트의 제출을 확인합니다.
- HTTP 응답 코드(Status code)와 응답이 어떤 방식으로 나오는지 직접 확인합니다.
Advanced
- Open Weather Map에 날씨를 요청(GET)하고, 응답을 확인합니다.
'코딩공부 > T.I.L' 카테고리의 다른 글
2022-02-07 State 끌어올리기 (0) | 2022.02.07 |
---|---|
2022-02-07 [React] 데이터 흐름의 이해와 비동기 요청 처리 성취 목표 (0) | 2022.02.07 |
2022-01-28 Postman으로 날씨 받아오기 (0) | 2022.01.28 |
2022-01-28 API test tools / Postman 사용하는 방법 (0) | 2022.01.28 |
2022-01-28 Open API와 API Key (0) | 2022.01.28 |