3.13.0 • Published 6 months ago

apollo-server-micro v3.13.0

Weekly downloads
29,224
License
MIT
Repository
github
Last release
6 months ago

npm version Build Status Join the community forum Read CHANGELOG

This is the Micro integration for the Apollo community GraphQL Server. Read the docs. Read the CHANGELOG.

A full example of how to use apollo-server-micro can be found in the docs.

CORS Example

This example demonstrates how to setup a simple Micro + CORS + GraphQL microservice, using micro-cors:

1) Package installation.

npm install micro micro-cors apollo-server-micro graphql

2) index.js

const cors = require('micro-cors')(); // highlight-line
const { ApolloServer, gql } = require('apollo-server-micro');
const { send } = require('micro');

const typeDefs = gql`
  type Query {
    sayHello: String
  }
`;

const resolvers = {
  Query: {
    sayHello(parent, args, context) {
      return 'Hello World!';
    },
  },
};

const apolloServer = new ApolloServer({ typeDefs, resolvers });
module.exports = apolloServer.start().then(() => {
  const handler = apolloServer.createHandler();
  return cors((req, res) => req.method === 'OPTIONS' ? send(res, 200, 'ok') : handler(req, res))
});

3) package.json

{
  "main": "index.js",
  "scripts": {
    "start": "micro"
  }
}

4) After an npm start, access http://localhost:3000/graphql in your browser to run queries using graphql-playground, or send GraphQL requests directly to the same URL.

Custom GraphQL Path Example

This example shows how to setup a simple Micro + GraphQL microservice, that uses a custom GraphQL endpoint path:

1) Package installation.

npm install micro apollo-server-micro graphql

2) index.js

const { ApolloServer, gql } = require('apollo-server-micro');

const typeDefs = gql`
  type Query {
    sayHello: String
  }
`;

const resolvers = {
  Query: {
    sayHello(parent, args, context) {
      return 'Hello World!';
    },
  },
};

const apolloServer = new ApolloServer({ typeDefs, resolvers });
module.exports = apolloServer.start().then(() => {
  return apolloServer.createHandler({ path: '/data' });  // highlight-line
});

3) package.json

{
  "main": "index.js",
  "scripts": {
    "start": "micro"
  }
}

4) After an npm start, access http://localhost:3000/data in your browser to run queries using graphql-playground, or send GraphQL requests directly to the same URL.

Fully Custom Routing Example

This example demonstrates how to setup a simple Micro + GraphQL microservice, that uses micro-router for fully custom routing:

1) Package installation.

npm install micro microrouter apollo-server-micro graphql

2) index.js

const { router, get, post, options } = require('microrouter');
const { ApolloServer, gql } = require('apollo-server-micro');

const typeDefs = gql`
  type Query {
    sayHello: String
  }
`;

const resolvers = {
  Query: {
    sayHello(parent, args, context) {
      return 'Hello World!';
    },
  },
};

const apolloServer = new ApolloServer({ typeDefs, resolvers });
module.exports = apolloServer.start().then(() => {
  const graphqlPath = '/data';
  const graphqlHandler = apolloServer.createHandler({ path: graphqlPath });
  return router(
    get('/', (req, res) => 'Welcome!'),
    post(graphqlPath, graphqlHandler),
    get(graphqlPath, graphqlHandler),
  );
});

3) package.json

{
  "main": "index.js",
  "scripts": {
    "start": "micro"
  }
}

4) After an npm start, access http://localhost:3000/data in your browser to run queries using graphql-playground, or send GraphQL requests directly to the same URL.

3.12.1

8 months ago

3.13.0

6 months ago

2.26.2

8 months ago

3.12.0

1 year ago

3.10.3

2 years ago

3.11.0

1 year ago

3.11.1

1 year ago

2.26.1

2 years ago

3.10.4

1 year ago

3.9.0

2 years ago

3.10.1

2 years ago

3.10.0

2 years ago

3.10.2

2 years ago

2.26.0

2 years ago

3.8.0

2 years ago

3.8.2

2 years ago

3.8.1

2 years ago

3.7.0

2 years ago

3.6.8

2 years ago

2.25.4

2 years ago

3.6.6

2 years ago

3.6.5

2 years ago

3.6.4

2 years ago

3.6.7

2 years ago

3.6.2

2 years ago

3.6.1

2 years ago

3.6.0

2 years ago

3.6.0-alpha.1

2 years ago

3.6.0-alpha.0

2 years ago

3.6.3

2 years ago

3.5.0

2 years ago

2.25.3

2 years ago

3.4.1

2 years ago

3.4.0

3 years ago

3.4.0-alpha.0

3 years ago

3.2.0

3 years ago

3.3.0

3 years ago

3.2.0-alpha.0

3 years ago

3.1.2

3 years ago

3.1.1

3 years ago

3.1.0

3 years ago

3.0.2

3 years ago

3.1.0-alpha.1

3 years ago

3.1.0-alpha.0

3 years ago

3.0.1

3 years ago

3.0.0

3 years ago

3.0.0-preview.4

3 years ago

3.0.0-rc.1

3 years ago

3.0.0-rc.0

3 years ago

3.0.0-preview.3

3 years ago

2.25.2

3 years ago

3.0.0-preview.1

3 years ago

3.0.0-preview.2

3 years ago

3.0.0-preview.0

3 years ago

2.25.0

3 years ago

2.25.1

3 years ago

2.25.0-alpha.1

3 years ago

3.0.0-html.2

3 years ago

3.0.0-html.0

3 years ago

3.0.0-lambda.0

3 years ago

2.23.1-unified.0

3 years ago

2.23.1-unified.2

3 years ago

3.0.0-alpha.4

3 years ago

2.24.1

3 years ago

2.25.0-alpha.0

3 years ago

2.24.0

3 years ago

2.24.0-alpha.2

3 years ago

2.24.0-alpha.1

3 years ago

2.24.0-alpha.0

3 years ago

2.23.0

3 years ago

2.23.0-alpha.1

3 years ago

2.23.0-alpha.0

3 years ago

2.22.2

3 years ago

2.22.2-alpha.0

3 years ago

2.22.1

3 years ago

2.22.0

3 years ago

2.22.0-alpha.0

3 years ago

2.21.2

3 years ago

2.21.2-alpha.0

3 years ago

2.21.1

3 years ago

2.21.1-alpha.0

3 years ago

2.21.0

3 years ago

2.21.0-alpha.0

3 years ago

2.21.0-alpha.1

3 years ago

2.21.0-alpha.2

3 years ago

2.20.0

3 years ago

2.20.0-alpha.0

3 years ago

2.19.2

3 years ago

2.19.1

3 years ago

2.19.0

4 years ago

2.19.0-alpha.1

4 years ago

2.18.2

4 years ago

2.19.0-alpha.0

4 years ago

2.18.1

4 years ago

2.18.0

4 years ago

2.18.0-rc.1

4 years ago

2.18.0-rc.0

4 years ago

2.17.1-alpha.0

4 years ago

2.17.0

4 years ago

3.0.0-alpha.3

4 years ago

3.0.0-alpha.2

4 years ago

2.16.1

4 years ago

2.16.0

4 years ago

2.15.1

4 years ago

2.15.0

4 years ago

2.15.0-alpha.1

4 years ago

2.14.5

4 years ago

2.15.0-alpha.0

4 years ago

2.14.4

4 years ago

2.14.3

4 years ago

2.14.2

4 years ago

2.14.1

4 years ago

2.14.0

4 years ago

2.14.0-alpha.2

4 years ago

2.14.0-alpha.1

4 years ago

2.14.0-alpha.0

4 years ago

2.13.1

4 years ago

2.13.1-alpha.1

4 years ago

2.13.1-alpha.0

4 years ago

2.13.0

4 years ago

2.13.0-alpha.1

4 years ago

2.13.0-alpha.0

4 years ago

2.12.0

4 years ago

2.12.0-alpha.5

4 years ago

2.12.0-alpha.3

4 years ago

2.12.0-alpha.4

4 years ago

2.12.0-alpha.2

4 years ago

2.12.0-alpha.1

4 years ago

2.12.0-alpha.0

4 years ago

2.11.0

4 years ago

2.11.0-alpha.3

4 years ago

2.11.0-alpha.2

4 years ago

2.11.0-alpha.1

4 years ago

2.10.1

4 years ago

2.10.0

4 years ago

2.9.16

4 years ago

2.9.15

4 years ago

2.9.14

4 years ago

2.9.13

4 years ago

2.9.12

4 years ago

2.9.10

4 years ago

2.9.11

4 years ago

2.9.9

4 years ago

2.9.8

4 years ago

2.9.7

5 years ago

2.9.6

5 years ago

2.9.5

5 years ago

2.9.4

5 years ago

2.9.3

5 years ago

2.9.2

5 years ago

2.9.1

5 years ago

2.9.0

5 years ago

2.8.2

5 years ago

2.8.1

5 years ago

2.8.0

5 years ago

2.7.2

5 years ago

2.7.1

5 years ago

2.7.0

5 years ago

2.7.0-alpha.14

5 years ago

2.7.0-alpha.13

5 years ago

2.7.0-alpha.12

5 years ago

2.7.0-alpha.9

5 years ago

2.6.9

5 years ago

2.6.8

5 years ago

2.7.0-alpha.8

5 years ago

2.7.0-alpha.7

5 years ago

2.7.0-alpha.6

5 years ago

2.7.0-alpha.5

5 years ago

2.7.0-alpha.4

5 years ago

2.7.0-alpha.3

5 years ago

2.7.0-alpha.2

5 years ago

2.7.0-alpha.1

5 years ago

2.7.0-alpha.0

5 years ago

2.6.7

5 years ago

2.6.7-alpha.0

5 years ago

2.6.6

5 years ago

2.6.5

5 years ago

2.6.5-alpha.0

5 years ago

2.6.4

5 years ago

2.6.3

5 years ago

2.6.2

5 years ago

2.6.2-alpha.0

5 years ago

2.6.1

5 years ago

2.6.1-alpha.0

5 years ago

2.6.0

5 years ago

2.6.0-rc.0

5 years ago

2.6.0-alpha.9

5 years ago

2.5.1

5 years ago

2.5.1-alpha.1

5 years ago

2.5.1-alpha.0

5 years ago

2.6.0-alpha.8

5 years ago

2.6.0-alpha.7

5 years ago

2.6.0-alpha.6

5 years ago

2.6.0-alpha.5

5 years ago

2.6.0-alpha.4

5 years ago

2.6.0-alpha.3

5 years ago

2.6.0-alpha.2

5 years ago

2.6.0-alpha.1

5 years ago

2.6.0-alpha.0

5 years ago

2.5.1-alpha.15

5 years ago

2.5.1-alpha.14

5 years ago

2.5.0

5 years ago

2.5.0-rc.0

5 years ago

2.5.0-alpha.7

5 years ago

2.5.0-alpha.6

5 years ago

2.5.0-alpha.5

5 years ago

2.5.0-alpha.4

5 years ago

2.5.0-alpha.3

5 years ago

2.5.0-alpha.2

5 years ago

2.5.0-alpha.1

5 years ago

2.5.0-alpha.0

5 years ago

2.4.8

5 years ago

2.4.7

5 years ago

2.4.6

5 years ago

2.4.4

5 years ago

2.4.3

5 years ago

2.4.2

5 years ago

2.4.2-rc.0

5 years ago

2.4.1

5 years ago

2.4.0

5 years ago

2.4.0-alpha.4

5 years ago

2.3.3

5 years ago

2.3.2

5 years ago

2.4.0-alpha.2

5 years ago

2.4.0-alpha.1

5 years ago

2.4.0-alpha.0

5 years ago

2.3.1

5 years ago

2.3.0

5 years ago

2.2.7

5 years ago

2.3.0-alpha.0

5 years ago

2.2.7-alpha.0

5 years ago

2.2.6

5 years ago

2.2.5

5 years ago

2.2.4

5 years ago

2.2.3

5 years ago

2.2.2

5 years ago

2.2.1

5 years ago

2.2.0

5 years ago

2.2.0-alpha.4

5 years ago

2.2.0-alpha.3

5 years ago

2.2.0-alpha.2

5 years ago

2.2.0-alpha.1

6 years ago

2.2.0-alpha.0

6 years ago

2.1.0

6 years ago

2.0.7

6 years ago

2.0.6

6 years ago

2.0.5

6 years ago

2.0.4

6 years ago

2.0.3

6 years ago

2.0.2

6 years ago

2.0.1

6 years ago

2.1.0-alpha.10

6 years ago

2.1.0-alpha.9

6 years ago

2.1.0-alpha.8

6 years ago

2.1.0-alpha.7

6 years ago

2.0.0

6 years ago

2.0.0-rc.10

6 years ago

2.0.0-rc.9

6 years ago

2.0.0-rc.8

6 years ago

1.4.0

6 years ago

2.0.0-rc.7

6 years ago

2.0.0-beta.9

6 years ago

2.0.0-beta.8

6 years ago

2.0.0-beta.7

6 years ago

2.0.0-beta.6

6 years ago

2.0.0-beta.5

6 years ago

1.3.6

6 years ago

1.3.5

6 years ago

1.3.4

6 years ago

1.3.3

6 years ago

1.3.2

6 years ago

1.3.1

6 years ago

1.3.0

6 years ago

1.2.0

7 years ago

1.2.0-pre.1

7 years ago

1.1.7

7 years ago

1.1.6

7 years ago

1.1.5

7 years ago

1.1.3

7 years ago

1.1.2

7 years ago

1.1.0

7 years ago

1.0.5

7 years ago

1.0.4

7 years ago

1.0.3-tracing.3

7 years ago

1.0.3-tracing.2

7 years ago

1.0.3-tracing.1

7 years ago

1.0.3-tracing.0

7 years ago

1.0.2

7 years ago