GraphQL 쿼리 빌더 안내
GraphQL은 REST와 달리 클라이언트가 필요한 필드를 정확히 명시해 요청합니다. 그래서 스키마(SDL)를 알아야 안전한 쿼리를 작성할 수 있는데, 본 도구는 SDL을 파싱해 루트 필드와 반환 타입의 하위 필드를 트리로 보여 줍니다. 체크박스로 원하는 필드만 골라 GraphQL 쿼리, Variables JSON, cURL, fetch 코드를 한 번에 출력합니다.
인자(arguments)는 자동으로 GraphQL 변수($id: ID!)로 추출되며, 입력한 값은 Variables JSON에 매핑됩니다. 즉, 이 도구로 만든 쿼리를 그대로 GraphQL 엔드포인트로 보내면 작동합니다. Mutation과 Subscription도 같은 방식으로 지원합니다.
주요 기능
- SDL 파싱: type 정의에서 필드와 인자 추출
- 오퍼레이션 종류: query / mutation / subscription 전환
- 인자를 GraphQL 변수로 자동 추출 ($var)
- cURL · fetch 코드 동시 생성
- 깊이 제한 경고로 N+1 위험 인지
자주 묻는 질문 (FAQ)
Q. 스키마를 모르는데 사용할 수 있나요?
A. GraphQL 서버 대부분은 인트로스펙션(introspection)을 지원합니다. __schema 쿼리로 받은 SDL을 본 도구에 붙여넣으면 동일하게 작동합니다.
Q. 중첩 필드는 어떻게 펼치나요?
A. 반환 필드 트리에서 객체 타입(User 등)은 자동으로 펼쳐지며, 그 하위 스칼라 필드를 체크할 수 있습니다. 너무 깊으면 N+1 경고가 표시됩니다.
Q. Apollo, urql 같은 클라이언트에도 쓸 수 있나요?
A. 생성된 쿼리 문자열과 변수 객체를 그대로 useQuery·useMutation에 전달하면 됩니다. fetch 코드는 클라이언트 라이브러리 없이 동작하는 순수 예시입니다.