210524_REST API

Bitnara Lee·2021년 5월 24일
0

REST API에 대해 이해할 수 있다.
REST API 문서를 읽을 수 있다.
REST API에 맞춰 디자인할 수 있다.
Open API와 API Key에 대해 이해할 수 있다.
Postman이 무엇인지 이해하고 사용할 수 있다.
HTTP API 테스팅이 무엇인지 알 수 있다.
Postman을 사용하여 서버에 GET, POST 요청을 보내고 응답을 받을 수 있다.
(Optional) Postman을 사용하여 Open Weather Map Open API에 요청을 보낼 수 있다.
Chrome Network Tab을 이해할 수 있다.
Chrome Network Tab 사용 방법을 익히고 사용할 수 있다.

구글가이드

웹상에서 사용되는 자원들을 HTTP URI로 표현하고, HTTP Method를 통해 상태를 정의하는 방식

REST : “Representational State Transfer”
클라이언트의 요청(GET,POST 등 메소드)에 따라 서버에서 적절한 응답을 하는 API
개별적으로 주소 지정이 가능한 리소스(API의 명사)의 컬렉션으로 모델링됨. 리소스는 리소스 이름으로 참조되며 적은 수의 메서드 집합(동사 또는 작업으로도 알려짐)을 통해 조작됨.

Endpoint

ex) http://3.36.72.17:3000

root-endpoint(혹은 root-URL): API로 요청을 서버와 통신할 때, 서버가 요청을 수락하는 시작점
일반적으로 도메인 주소의 루트(/)
ex) Github API의 root-endpoint ==> https://api.github.com 트위터 API의 root-endpoint ==> https://api.twitter.com

path(url-path): API를 통해 서버와 통신할 때, 서버와 통신할 수 있는 key 역할. ex) https://api.github.com/user 에서 'user'

1. 메시지 조회

  • Request

ex) GET /nala/messages

파라미터(query parameter)를 사용할 수 있습니다.
ex) /nala/messages?roomname=내방

  • Response

    JSON 형식으로 응답이 옵니다.
[
  {
    "id": 1,
    "username": "나라",
    "text": "안녕하세요",
    "roomname": "내방",
    "date": "2021-07-28T03:54:21.134"
  },
  // 여러 개의 메시지
]

2. 메시지 추가

  • Request

    ex) POST /nala/messages

메시지는 24시간마다 자동으로 리셋됩니다.

요청 형식: JSON
MIME 타입: application/json
Response

JSON 형식으로 응답이 옵니다.

{
  "id": 5
}

3. 메시지 초기화

Request
POST /{githubID}/clear
요청 본문은 필요x

Response
성공시 JSON 형식으로 응답이 옵니다.

{
  "message": "message initialized!"
}

REST API 디자인

REST API 설계시 가장 중요한 두 가지 바탕

  • URI는 정보의 자원을 표현
  • 자원에 대한 상태 정의는 HTTP method(GET, POST, PUT, DELETE...)로 표현

Open API와 API Key

Postman 사용하는 방법

HTTP API 테스팅 도구

브라우저의 한계 : 주소창을 통해서 URL을 요청할 시, 기본적으로 GET 요청
다른 요청을 보내려면, 개발자 도구를 이용해 fetch를 이용한 JavaScript 코드를 작성

브라우저가 아닌 다른 종류의 HTTP 요청을 테스트할 수 있는 다양한 도구들이 존재

HTTP API 테스팅 도구 (CLI)

HTTP API 테스팅 도구 (GUI)

Postman

profile
Creative Developer

0개의 댓글