Logo

기능:

Persisted Queries

Persisted Queries

REST API에서는 여러 엔드포인트를 생성하여 각각 미리 정의된 데이터 집합을 반환합니다. 반면 GraphQL API에서는 단일 엔드포인트에 원하는 쿼리를 전송하면, 요청한 데이터만 정확히 반환됩니다.

Persisted queries는 일반적인 GraphQL 쿼리이지만, 서버에 저장되어 고유한 URL로 접근할 수 있습니다. 이를 통해 REST 엔드포인트를 에뮬레이션합니다. 두 API의 장점을 모두 제공하면서 각각의 단점을 극복합니다:

장점단점
GET 또는 POST로 접근 가능POST로만 접근 가능
✅ 서버 또는 CDN에서 캐싱 가능❌ 캐싱을 위해 클라이언트 측에 추가 레이어가 필요
✅ 안전함: 의도한 데이터만 노출됨❌ 악의적인 사용자를 포함한 누구에게나 데이터가 노출됨
✅ 데이터 과부족 없음, 모든 데이터를 단일 요청으로 조회❌ 모든 데이터를 조회하려면 여러 번의 요청이 필요할 수 있어 느릴 수 있음
✅ 프로젝트의 빠른 반복 개발이 가능❌ 모든 엔드포인트를 생성하는 것이 번거로움
✅ 자체 문서화 가능❌ 문서 작성이 필수
✅ 클라이언트가 쿼리를 작성하고 게시할 수 있음❌ 엔드포인트 게시는 코드로 수행됨
에디터에서의 persisted query
에디터에서의 persisted query

뉴스레터 구독하기

Gato GraphQL의 모든 업데이트를 놓치지 마세요.