Rest-API/GraphQL-API(통신)

Park Bumsoo·2022년 3월 19일
0

통신

데이터 전송

  1. 방법 HTTP / API /Graphql / Rest
  2. 데이터전송 실습 Postman / Playground

전송 프로토콜
파일전송 - FTP
간단한 메일 - SMTP
텍스트/하이퍼텍스트(<~~>, HTML을 말함) - HTTP

Front-end(요청) <-> Back-end(응답/검증) <-> DB

  • 주고받는 데이터(text)를 JSON데이터라 하며 JSON형태로 주고 받는다고 한다.
  • 응답과 요청은 response(응답), request(요청)이라 칭한다.
  • Back-end(응답/검증) 과정중 상태코드를 활용하여 요청에대한 성공/실패를 표현
    ex) 404 응답실패(요청페이지를 찾을 수 없다.)


    상태코드 상세
    https://ko.wikipedia.org/wiki/HTTP_%EC%83%81%ED%83%9C_%EC%BD%94%EB%93%9C
    출처 : 위키백과

API

요청을 관리해 주는 관리자역활의 함수이다.
각각의 기능마다 다른 API를 가지며 기능에 맞는 요청을 해야한다.

ex) 게시물데이터(FE) <-> 게시물API(BE)

BEAPI를 만들어주며 FE에서는 만들어진 API를 사용한다.


rest-API

  • 주소와 같은형식으로 생김
  • axios 사용
  • 모든데이터를 전부 받아오며 용량이커 응답까지의 시간이 오래걸리고 비용이 큰 단점이 가지고있다.
  • open-API의 대부분이 rest-API에 속한다.

graphql-API

  • 일반 함수와 같음
  • apollo client 사용
  • 데이터를 선택적으로 가져오며 부분의 정보를 가져와 활용하기에 시간/비용 면에서 효율적이다.
  • 장점이 많지만 국내에선 아직 rest-API가 많이 사용중이다.

ex) 네이버 1번 게시글 조회
rest-API : http://naver.com/board/1
graphql-API : board(1)

CRUD
특정 기능 API를 제작할 경우 최소 4가지의 API가 필요하며
그 4가지를 Create(생성) / Read(조회) / Update(수정) / Delete(삭제) 이라하며

API별로 표와같은 명령어로 사용하며 이를 메서드*(Method)라 한다.
axios/apollo-client 등을 import 기능을 통해 가져와서 사용한다.


API 연습과 실습

rest-API와 graphql-API는 해당 표처럼
rest-API는 포스트맨/스웨거를 통해서 연습을 할 수 있으며
graphql-API는 플레이그라운드 를 통해서 연습이 가능하다.

profile
프론트엔드 주니어 개발자(React, Next.js)

0개의 댓글