UNPKG

apollo-server-edge

Version:

Production-ready Node.js GraphQL server for edge environments

19 lines (15 loc) 536 B
import { graphqlCloudflare } from './cloudflareApollo'; import { ApolloServerBase } from 'apollo-server-core'; interface FetchEvent extends Event { respondWith: (result: Promise<ResponseInit>) => void; request: RequestInit; } export class ApolloServer extends ApolloServerBase { public async listen() { const graphql = this.request.bind(this); addEventListener('fetch', (event: FetchEvent) => { event.respondWith(graphqlCloudflare(graphql)(event.request)); }); return await { url: '', port: null }; } }