코드캠프 부트캠프 3일차-2

개발일기·2022년 1월 12일
0

API

API란 HTTP 요청을 Back-end 컴퓨터에 보냈을때 실행되는 Back-end 기능이다.

Front-end에서 HTTP라는 길을 통해 게시물 데이터를 Back-end에 보내 저장시켰다. 만약, 게시물이 아닌 프로필 데이터를 저장하고 싶다면? 상품에 대한 데이터를 저장하고 싶다면?

그러기 위해서, 여러개의 HTTP 라는 길이 존재해야하고, 각각의 요청마다 담당자가 필요하다. 우리는 이 담당자를 'API'라고 부른다.

API를 기능이라 했는데 그렇다면 함수인가?
Back-end 개발자가 만든 함수이다. 함수에는 인자와 return 데이터가 있는데
API에 요청할 때 보내는 데이터는 API 함수로 들어갈 인자이고, 응답으로 받게되는 데이터가 API 함수의 return 데이터이다.

API 종류 (Rest-API vs graphql-API)

API의 종류는 크게 rest-API, graphql-API로 2가지가 있다. rest-API와 graphql-API는 몇가지 차이점이 있다.

1. 함수 이름의 차이

rest-API는 API 이름이 마치 홈페이지 주소처럼 생겼다.
graphql-API는 API 이름이 일반적인 함수와 같다.

2. 응답 결과물의 차이

rest-API는 응답 결과로 back-end 개발자가 만든 함수에서 보내주는 모든 데이터를 받아야만 한다. 반면에, graphql-API는 back-end 개발자가 만든 함수에서 필요한 데이터만을 골라 받을 수 있다.
예를들어, Front-end 개발자가 A라는 제품의 모델명을 알고싶어서 Back-end에 요청을 했다면
rest-API의 경우에는 A라는 제품의 모델명, 크기, 무게, 색상, 버전, 등... 과 같은 다른 데이터들까지 받게되는 반면에 graphql-API는 modelname(A)와 같이 함수를 사용하게 되면 모델명의 데이터만 받을 수 있다.

이러한 이유로, 각 API에 전송을 요청하는 담당자도 다르다.
rest-API에 요청하는 요청담당자는 axios,
graphql-API에 요청하는 요청담당자는 apollo-client 이다.

요청 담당자는 Front-end에서 설치하는 라이브러리이다.

API와 CRUD

API는 크게 4가지 방식으로 구분할 수 있다.
1. 새로운 것을 생성하는 API => Create
2. 기존의 것을 조회하는 API => Read
3. 기존의 것을 수정하는 API => Update
4. 기존의 것을 삭제하는 API => Delete

API 요청 결과 타입(JSON)

JSON 이란?
API 요청에 대한 결과를 보면 자바스크립트(Javascript)의 객체(Object)처럼 표기(Notation)된 것처럼 보인다. 그래서 JavaScript Object Notation 의 앞글자를 따서 JSON 이라 부른다.

하나로 정리를 하자면텍스트,

profile
개발자가 꿈이에오

1개의 댓글

comment-user-thumbnail
2022년 1월 18일

으악 알면알수록 어렵네요ㅠㅜ

답글 달기