Javascript/Graphql 3

[Graphql] 3. React-Apollo

Apollo는 redux를 대체할 수 있는 grpahql-client의 하나다. Graphql을 기반으로 한 상태관리 플랫폼이며 client에서 graphql을 사용하여 데이터를 가져오는 UI를 만들 때 사용하기 좋다. query문을 정의하고 graphql 서버로 보내면 원하는 데이터 혹은 한 번에 많은 양의 데이터를 받아올 수 있다. 캐싱을 자동으로 관리해줘서 redux의 reducer처럼 복잡하게 관리할 필요가 없다.

Javascript/Graphql 2021.12.23

[Graphql] 2. 스키마 & 타입

GraphQL은 어떠한 백엔드 프레임워크나 프로그래밍 언어든 함께 사용할 수 있다. 1. 타입시스템 GraphQL 쿼리 언어는 기본적으로 객체의 필드를 선택하는 것을 알 수 있다. 예) 1) root 객체로 시작 2) hero 필드를 선택 3) hero에 의해 반환된 객체에 대해 name과 appearIn 필드를 선택 GraphQL 쿼리의 형태가 결과와 거의 일치하기 때문에 서버에 대해 모르는 상태에서 쿼리가 반환할 결과를 예측할 수 있다. 하지만 서버에 요청할 수 있는 데이터에 대한 정확한 표현을 갖는 것이 좋다. 그래서 어떤 필드를 선택할 수 있는지, 어떤 종류의 객체를 반환할 수 있는지, 하위 객체에서 사용할 수 있는 필드가 무엇인지, 이것이 바로 스키마가 필요한 이유이다. 모든 GrpahQL 서비..

Javascript/Graphql 2021.12.23

[Graphql] 1. graphql

graphql은 데이터를 요청하는 방법에 일부를 정보를 얻기 위해 보내는 질의문(Query)을 만들기 위해 사용되는 언어다. graphql aip는 주로 하나의 endpoint를 사용하고 요청할 때 사용한 query 문에 따라 응답 구조가 달라진다. graphql 장점 1. HTTP 요청의 횟수를 줄일 수 있다. -> graphql은 원하는 정보를 하나의 query에 모두 담아 요청하는 것이 가능 2. HTTP 응답의 Size를 줄일 수 있다. -> 원하는 대로 정보를 요청할 수 있어서

Javascript/Graphql 2020.06.15