Express GraphQLサーバーを起動する – 【GraphQL】

Express GraphQLサーバーを起動する – 【GraphQL】

Expressサーバを使用してGraphQLサーバを起動します。

GraphQLのGetting StartedでもExpressサーバを使用しています。

プロジェクト作成とインストール

$ npm init -y
$ npm i express graphql express-graphql
$ touch server.cjs

package.json

package.jsonのnpmスクリプトを以下にします。

  "scripts": {
    "start": "node server.cjs"
  }

server.cjs

server.cjsの中身です。

server.cjs

var express = require("express")
var { graphqlHTTP } = require("express-graphql")
var { buildSchema } = require("graphql")

var schema = buildSchema(`
  type Query {
    hello: String
  }
`)

var root = {
  hello: () => {
    return "Hello world!"
  }
}

var app = express()
app.use(
  "/graphql",
  graphqlHTTP({
    schema: schema,
    rootValue: root,
    graphiql: true,
  })
)
app.listen(4000)
console.log("Running a GraphQL API server at http://localhost:4000/graphql")

起動

npm run startでサーバ起動ができます。

http://localhost:4000/graphqlにアクセスします。

GraphQLのplaygroundにアクセスできます。この画面からhelloクエリを実行します。

helloクエリ

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

ドキュメント

Running an Express GraphQL Server | GraphQL
A query language for your API — GraphQL provides a complete description of the data in your API, gives clients the power...

コメント

タイトルとURLをコピーしました