GraphQL

Dev_Sumni·2022년 5월 19일
post-thumbnail

GraphQL 소개

  • API를 위한 쿼리 언어,
    존재하는 데이터를 쿼리하는 런타임
  • 필요한 것을 구체적으로 요청하기
  • 주체는 웹클라이언트이며, 서버로부터 데이터를 효율적으로 가져오기위해 사용

vs SQL → Server와 Web Client간의 질의어
vs REST API → 다중 엔드포인트 => 단일 엔드포인트

Overfetching 문제 → 필요한 데이터만 요청
Underfetching 문제 → 한번의 요청

환경 설정 및 프로젝트 생성

GraphQL은? 라이브러리가 아닌 명세로 다뤄보려면 구현체 필요하다
star wars api를 clone해서 로컬에서
다양한 도구들 graphql hraphiql express.. 등

GraphQL 기본 1

쿼리 → 요청, 결과 동일/ 주석/ 작업(타입/ 이름)
쿼리 → 필드 객체 참조(다중콜x)/ 인자/ 별칭
Fragment → 반복되는 필드셋/ 변수 전달 가능
변수/ 지시어 → 동적 쿼리 방법/ @include @skip

GraphQL 기본 2

뮤테이션 → 데이터의 수정을 가하는 방법
Apollo graphQL → 다양한 기능이 추가된 라이브러리
뮤테이션 다중 필드 → 순차 실행(쿼리는 병렬)
인라인 프래그먼트 → interface/ union일때 사용

GraphQL 기본 3

타입 시스템 → 객체 타입과 필드
특별한 타입 → 쿼리 타입/ 뮤테이션 타입
스칼라 타입 → 구체적 데이터
기타 → 인터페이스/ 유니온/ 인풋

profile
개발 일지 끄적 끄적,,

0개의 댓글