GraphQL ロゴGraphQL

GraphQL.js入門

前提条件#

始める前に、Node v6がインストールされている必要があります。ただし、例はほとんどの場合、以前のバージョンのNodeでも動作するはずです。このガイドでは、トランスパイルが必要な言語機能は使用しませんが、Promiseクラスアロー関数などのいくつかのES6機能を使用します。もし、これらに慣れていない場合は、最初に調べておくと良いでしょう。

新しいプロジェクトを作成し、現在のディレクトリにGraphQL.jsをインストールするには、

npm init
npm install graphql --save

コードの記述#

GraphQLクエリを処理するには、Query型を定義するスキーマと、各APIエンドポイントに「リゾルバー」と呼ばれる関数を持つAPIルートが必要です。「Hello world!」を返すだけのAPIの場合、このコードをserver.jsというファイルに記述できます。

var { graphql, buildSchema } = require("graphql")
// Construct a schema, using GraphQL schema language
var schema = buildSchema(`
type Query {
hello: String
}
`)
// The rootValue provides a resolver function for each API endpoint
var rootValue = {
hello: () => {
return "Hello world!"
},
}
// Run the GraphQL query '{ hello }' and print out the response
graphql({
schema,
source: "{ hello }",
rootValue,
}).then(response => {
console.log(response)
})

これを次のように実行すると

node server.js

GraphQLレスポンスが出力されるはずです。

{
data: {
hello: "Hello world!"
}
}

おめでとうございます - これでGraphQLクエリを実行しました。!

実用的なアプリケーションでは、おそらくコマンドラインツールでGraphQLを実行するのではなく、APIサーバーからGraphQLクエリを実行したいでしょう。HTTP経由でAPIサーバーにGraphQLを使用するには、Express GraphQLサーバーの実行を確認してください。

続きを読む →Express GraphQLサーバーの実行