TIL 21.05.24

Jaemin Jung·2021년 5월 24일
0

Today I Learned

목록 보기
26/62
post-thumbnail

오늘한일

Rest api의 개념을 배웠고 Postman을 사용해 HTTP 요청 실습을 진행하였다.
네트워크는 뭔가 보면 알겠는데 설명은 못하겠는..? 느낌이다.
시각적으로 보여지지가 않아서 그런거같다.

Achievement Goals

(이해한대로 작성하였기에 틀릴수도 있습니다. 계속 공부하며 수정해 나가겠습니다.)

  • REST API에 대해 이해할 수 있다.
  • REST API에 맞춰 디자인할 수 있다.
  • Open API와 API Key에 대해 이해할 수 있다.
  • Postman이 무엇인지 이해하고 사용할 수 있다.
  • HTTP API 테스팅이 무엇인지 알 수 있다.
  • Postman을 사용하여 서버에 GET, POST 요청을 보내고 응답을 받을 수 있다.

REST API

REST API에서 REST는 “Representational State Transfer” 의 약자로,
로이 필딩의 박사학위 논문에서 웹(http)의 장점을 최대한 활용할 수 있는 아키텍처라는 명목으로 처음 등장하였다.
웹상에서 사용되는 자원들을 HTTP URI로 표현하고, HTTP Method를 통해 상태를 정의하는 방식을 말한다.
쉽게말해 HTTP프로토콜을 좀더 HTTP답게 사용하는 하나의 방법론이라고 보면 될것이다.

REST의 가장 큰 특징 중 하나는 HTTP라는 기존 웹표준을 그대로 사용하기 때문에, 웹에서 사용하는 기존 인프라를 그대로 활용이 가능하다는것이고,
REST의 또 다른 큰 특징 중 하나는 REST API 메시지만 보고도 이를 쉽게 이해 할 수 있는 자체 표현 구조로 되어 있다는 것이다.

REST API 디자인

REST API 설계 시 가장 중요한 항목은 다음의 2가지로 요약할 수 있다.

  • URI는 정보의 자원을 표현해야 한다.
  • 자원에 대한 행위는 HTTP Method(GET, POST, PUT, DELETE)로 표현한다.

REST API를 제대로 적용하지 않은 URI

	GET /members/delete/1

URI에는 delete와같은 동사가 들어가서는 안된다.
행위에 대해서는 HTTP Method를 통해 표현한다.

    DELETE /members/1

OPEN API & API Key

OPEN API는 open이라는 말을 통해 알 수 있듯이, 공적으로 누구나 사용이 가능한 API이다.
하지만 무제한으로 이용할 수 있다는건 아니고 적절한 제한은 존재한다.
주로 날씨정보, 교통정보등이 있고, 최근에는 코로나 관련 정보도 존재한다.

API Key는 말 그대로 서버의 문을 여는 열쇠라고 생각할 수 있다.
간혹 이 열쇠가 필요하지 않은 경우도 있으나,
무분별한 클라이언트에게 정보를 주지 않기위해 API를 이용하기 위한 최소한의 조건이라고 보면 될것이다.
일종의 티켓이라고 보면 될것같다.

HTTP API 테스팅 도구 Postman

웹 브라우저에서 서버에게 HTTP 요청을 보낼시 기본적으로 GET 요청을 보낸다.
GET이 아닌 다른 요청을 보내려면, 개발자 도구를 이용해 fetch를 이용하여 코드를 작성해야하는 불편함이 있다.
브라우저가 아닌 다른 종류의 HTTP 요청을 테스트할 수 있는 다양한 도구들이 존재한다.
그중 GUI도구인 Postman이 있다.
서버 API를 테스트하거나, 애초에 처음부터 API를 만들 때에도 매우 유용하다.

Postman 구성

  1. 새로운 탭 오픈 가능 (요청,응답 여러개 확인 가능)

  2. HTTP 메소드 선택 (GET, POST, DELETE등)

  3. URL 입력 창

  4. HTTP 요청 버튼

  5. HTTP 요청시 설정할 수 있는 각종 옵션 (파라미터, body추가)

  6. HTTP 응답 화면

참고사이트

https://moonspam.github.io/What-is-an-API/
https://velog.io/@eensungkim/RESTful-APIs-TIL-49%EC%9D%BC%EC%B0%A8

profile
내가 보려고 쓰는 블로그

0개의 댓글