API는 어떻게 작동하는가?
내 서버가
다른 곳에 있는 서버에 데이터 요청을 하고
내 서버는 요청한 데이터를 받는다.
Endpoint
서버와 같이 외부 시스템과 인터렉하는 모든 API들은 Endpoint를 가지고 있다.
endpoint가 한 개인 경우
kanye.rest 사이트에 들어가면 카니예 웨스트가 한 말들을 모아놓았다.
이 웹사이트는 카니예 웨스트 말을 모은 데이터 베이스를 호스트하는 곳이다.
API를 사용해서 우리는 이 웹사이트의 데이터에 접근할 수 있다.
API의 endpoint는 빨간 박스에 있는 url 이다.
이 경우는 서버에서 말 한마디만을 보내주는 아주 간단한 API이다.
url을 내 brawser bar 에 복사 붙여넣기 하면
내 브라우저는 get 요청을 kanye.rest 서버에 보낸다.
그리고서는 kanye.rest 서버에서 데이터를 보내준다.
내 브라우저에서 한 개의 quote가 나왔다.
endpoint가 여러 개인 경우
다를 API를 봐보자.
조크를 제공하는 API에서 조크 옵션 별로 endpoint가 따로 있다.
이 아래에도 endpoint가 여러 개 더 있다.
맨 위에 있는 endpoint 만을 주소창에 입력하면 에러가 난다.
어떤 카테고리를 원하는지도 적어줘야 한다.
이 때 endpoint보다 좀 더 정보가 들어간 path 필요하다.
Paths
좀 더 복잡한 API를 받을 때는 paths와 parameters를 써서
원하는 데이터만 뽑아서 가져올 수 있다.
범위를 좁혀갈 때 쓴다.
endpoint + 카테고리 = path
https://v2.jokeapi.dev/ : forward slash까지가 endpoint이다.
그 뒤에 원하는 카테고리명을 적어준다.
parameters
원하는 단어가 들어가는 조크를 찾을 때
단어 검색은 카테고리명으로 정해진 게 없으니 path로 찾을 수 없다.
이렇게 옵션 선택하는 경우에 파라미터를 쓴다.
파라미터는 url 끝에서
? 부터 시작하는 key-value pair이다.
연결은 &로 한다.
이렇게 api를 지정했을 때 url 안 구성은 아래와 같다.
https://v2.jokeapi.dev/joke(endpoint)/Programming,Spooky,Christmas(path)?blacklistFlags=religious,political,racist&contains=debugging&idRange=2-200&amount=2(pamameter)
'Node.js > APIs' 카테고리의 다른 글
JSON.parse( ) | JSON을 parse 하는 법 (0) | 2021.10.06 |
---|---|
HTTPs 모듈로 GET request 만들기 Node.js이용 (0) | 2021.10.06 |
JSON 이란? (0) | 2021.10.05 |
Authentication | Postman | 날씨 api 데이터 받기 (0) | 2021.10.05 |
API란? (Application Programming Interfaces) (0) | 2021.10.03 |
댓글