[typescript] GraphQL 쿼리 언어
GraphQL 스키마 정의
먼저, GraphQL 스키마를 정의해야 합니다. 스키마는 데이터 타입과 쿼리 형식을 정의합니다. TypeScript를 사용하여 GraphQL 스키마를 작성할 때는 다음과 같은 방법으로 작성할 수 있습니다.
import { gql } from 'graphql-tag';
const typeDefs = gql`
type Query {
hello: String
}
`;
여기서 typeDefs
는 GraphQL 스키마를 정의합니다. 이 스키마는 hello
라는 필드를 가진 Query
타입을 정의하고 있습니다.
GraphQL 쿼리 실행
이제 정의한 GraphQL 스키마를 사용하여 실제 쿼리를 실행해보겠습니다. TypeScript의 경우, Apollo Client나 다른 GraphQL 클라이언트를 이용하여 서버에 쿼리를 실행할 수 있습니다.
import { ApolloClient, InMemoryCache, createHttpLink } from '@apollo/client';
import { gql } from '@apollo/client';
const client = new ApolloClient({
cache: new InMemoryCache(),
link: createHttpLink({
uri: 'http://localhost:4000/graphql',
}),
});
client
.query({
query: gql`
query {
hello
}
`,
})
.then(result => console.log(result.data));
위의 예제에서 ApolloClient
를 생성하고, query
메서드를 사용하여 서버에 쿼리를 보내고 결과를 받아올 수 있습니다.
GraphQL을 TypeScript와 함께 사용하면 타입 안정성과 IDE에서의 자동 완성과 같은 혜택을 누릴 수 있습니다. 이를 통해 개발자는 데이터 요청과 응답에 대해 더욱 예측 가능하고 안전한 코드를 작성할 수 있습니다.
더 자세한 내용은 TypeScript로 GraphQL 사용하기를 참고하세요.