GraphQL Yoga v2 documentation (superseded by v5): Koa is a new web framework designed by the team behind Express, which aims to be a smaller, more expressive, and more robust foundation for web applications and APIs.
Koa is a new web framework designed by the team behind Express, which aims to
be a smaller, more expressive, and more robust foundation for web applications and APIs. GraphQL
Yoga can be integrated easily as a route to the existing Koa application with a few lines of code.
So you can benefit from middlewares written for Koa with GraphQL Yoga.
Installation
npm i @graphql-yoga/node koa graphql
yarn add @graphql-yoga/node koa graphql
pnpm add @graphql-yoga/node koa graphql
bun add @graphql-yoga/node koa graphql
Example
import Koa from 'koa'import { createServer } from '@graphql-yoga/node'const app = new Koa()const graphQLServer = createServer<Koa.ParameterizedContext>()// Bind GraphQL Yoga to `/graphql` endpointapp.use(async ctx => { // Second parameter adds Koa's context into GraphQL Context const response = await graphQLServer.handleIncomingMessage(ctx.req, ctx) // Set status code ctx.status = response.status // Set headers response.headers.forEach((value, key) => { ctx.append(key, value) }) // Converts ReadableStream to a NodeJS Stream ctx.body = response.body})app.listen(4000, () => { console.log('Running a GraphQL API server at http://localhost:4000')})
This site uses cookies for analytics and improving your experience.