API
HTTP 요청을 Back-end 컴퓨터에 보냈을때 실행되는 Back-end 기능
크게 rest-API와 graphql-API가 있다
rest-API vs graphql-API
axios & rest-API
- 두 개의 컴퓨터가 정보를 주고 받을 때 주로 사용
res
값으로 데이터 전체를 받는다
따라서 원하는 데이터를 선별적으로 받을 수없어 용량이 너무 크고 무거워진다는 단점이 있다
- 그러나 몰라서는 안되는 이유
1) 국내에서는 세계적으로 거대한 트래픽이 일어나기 쉽지않고, 비용절감 효과도 크지 않다(국내에서 굳이?)
2) 취업하게 될 회사에서 graphql
이 아닌 rest
를 쓸수도 있기 때문
3) 어떤 회사는 여러 API를 수집해놓고 이를 무료로 공개한다(openAPI, publicAPI) 이런 API들은 rest API로 제공된다. 이런 open,public API를 사용할때 rest가 일반적
apollo client & graphql-API
- 필요한 데이터만 선별해서 받을수 있음
- 서버를 경제적으로 사용가능
- 페이스북이 만들고 사용 중
- 대세
JSON(API 요청 결과 타입)
Javascript Object(객체)처럼 Notation(표기)의 약자
1. 정보를 전달하는 문자열
2. 자바스크립트 객체 표기법
응답 : response(res)
요청 : request(req) 둘로 나뉨
axios에서는...
CRUD형식으로 JSON을 주고 받는다
create read update delete => 최소 4개 이상
한편 apollo-client에서는...
생성수정삭제가 모두 '변경'이니 변경인 mutation과 조회(read)라 할 수 있는 query가 있다