0

I have been trying to run Apollo Ghraphql server with Fastify. Code snippet for index file below:-

const { ApolloServer } = require('apollo-server-fastify');
const fastify = require('fastify')({ logger: true })
const config = require('./config')

const { typeDefs, resolvers } = require('./schema');
const server = new ApolloServer({
  typeDefs,
    resolvers
});

fastify.register(server.createHandler());
(async function () {
  await fastify.listen(config.port, config.host, (err) => {
    if(err) {
      console.log(err)
      process.exit(1)
    } else {
      console.log(`API server listening on port ${config.port} and host ${config.host}`)
    }

  })
})();

And my schema is like

const { gql } = require("apollo-server");

const typeDefs = gql`
    type Query {
        items: [Item!]!
        item: Item,
        hello: String!
    }
    type Item {
        id: ID!
        name: String!
        message: String!
    }
`;

const resolvers = {
    Query: {
        hello: () => "Hello World",
        items: () => {
      return {
        id: 1,
        name: 'test',
        message: 'test111'
      }
    },
    }
};

module.exports = {
    typeDefs,
    resolvers
};

When I start the server and try to access http://localhost:3000/graphql I am getting message "GET query missing." on the screen.

I am referring this - https://www.npmjs.com/package/apollo-server-fastify. Am I missing any step. Please help.

khushboo29
  • 906
  • 6
  • 16

1 Answers1

3

Right now fastify v3 has been released few weeks ago and not all the ecosystem has been upgraded as well.

So you need to install fastify v2 npm i fastify@2 since right now the latest is v3.

Manuel Spigolon
  • 11,003
  • 5
  • 50
  • 73