PageSourceSearch

https://graphql.org/_next/static/chunks/pages/graphql-js/graphql-http-b67b41c85a0312bb.js

js graphql.org collected 2026-09-24 07:01:35 UTC 8,952 bytes, 1 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1308],{11534:function(i,s,h){(window.__NEXT_P=window.__NEXT_P||[]).push(["/graphql-js/graphql-http",function(){return h(41500)}])},41500:function(i,s,h){"use strict";h.r(s),h.d(s,{useTOC:function(){return a}});var e=h(52676),n=h(92937),l=h(45043),r=h(79428),t=h(41751);function a(i){return[{value:"Express",id:"express",depth:2},{value:"createHandler",id:"createhandler",depth:3}]}s.default=(0,n.c)(function(i){let{toc:s=a(i)}=i,h={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",p:"p",pre:"pre",span:"span",...(0,r.a)(),...i.components};return(0,e.jsxs)(e.Fragment,{children:["\n",(0,e.jsx)(h.h1,{children:(0,e.jsx)(h.code,{children:"graphql-http"})}),"\n",(0,e.jsxs)(h.p,{children:["The ",(0,e.jsxs)(h.a,{href:"https://github.com/graphql/graphql-http",children:["official ",(0,e.jsx)(h.code,{children:"graphql-http"})," package"]})," provides a simple way to create a fully compliant GraphQL server. It has a handler for Node.js native ",(0,e.jsx)(h.a,{href:"https://nodejs.org/api/http.html",children:(0,e.jsx)(h.code,{children:"http"})}),", together with handlers for well-known frameworks like ",(0,e.jsx)(h.a,{href:"https://expressjs.com/",children:"Express"}),", ",(0,e.jsx)(h.a,{href:"https://www.fastify.io/",children:"Fastify"})," and ",(0,e.jsx)(h.a,{href:"https://koajs.com/",children:"Koa"}),"; as well as handlers for different runtimes like ",(0,e.jsx)(h.a,{href:"https://deno.land/",children:"Deno"})," and ",(0,e.jsx)(h.a,{href:"https://bun.sh/",children:"Bun"}),"."]}),"\n",(0,e.jsx)(h.h2,{id:s[0].id,children:s[0].value}),"\n",(0,e.jsx)(h.pre,{icon:t.Dr,tabIndex:"0","data-language":"js","data-word-wrap":"",children:(0,e.jsxs)(h.code,{children:[(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#C2F653"},children:"import"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:" {"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#E1E4E8"},children:" createHandler"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:" }"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#C2F653"},children:" from"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#9ECBFF"},children:' "'}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#609A06","--shiki-dark":"#9ECBFF"},children:"graphql-http/lib/use/express"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#9ECBFF"},children:'"'}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#9FA88A","--shiki-light-font-style":"italic","--shiki-dark":"#737373","--shiki-dark-font-style":"inherit"},children:" // ES6"})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#F97583"},children:"const"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:" {"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#1976D2","--shiki-dark":"#79B8FF"},children:" createHandler"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:" }"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#ECFAD1"},children:" ="}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#0E0F0B","--shiki-dark":"#F3F4F0"},children:" require"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#CFD3C5"},children:"("}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#9ECBFF"},children:'"'}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#609A06","--shiki-dark":"#9ECBFF"},children:"graphql-http/lib/use/express"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#9ECBFF"},children:'"'}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#CFD3C5"},children:") "}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#9FA88A","--shiki-light-font-style":"italic","--shiki-dark":"#737373","--shiki-dark-font-style":"inherit"},children:"// CommonJS"})]})]})}),"\n",(0,e.jsx)(h.h3,{id:s[1].id,children:s[1].value}),"\n",(0,e.jsx)(h.pre,{icon:t.KP,tabIndex:"0","data-language":"ts","data-word-wrap":"",children:(0,e.jsxs)(h.code,{children:[(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#F97583"},children:"function"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#0E0F0B","--shiki-dark":"#F3F4F0"},children:" createHandler"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:"({"})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#DBF6A2"},children:"  schema"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:","})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#DBF6A2"},children:"  rootValue"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:","})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#DBF6A2"},children:"  context"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:","})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#DBF6A2"},children:"  formatError"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:","})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#DBF6A2"},children:"  validationRules"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:","})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:"}"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#ECFAD1"},children:":"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:" {"})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#DBF6A2"},children:"  rootValue"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#ECFAD1"},children:"?:"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#1976D2","--shiki-dark":"#FF99E0"},children:" any"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:","})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#DBF6A2"},children:"  context"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#ECFAD1"},children:"?:"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#1976D2","--shiki-dark":"#FF99E0"},children:" any"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:","})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#0E0F0B","--shiki-dark":"#F3F4F0"},children:"  formatError"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#ECFAD1"},children:"?:"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#0E0F0B","--shiki-dark":"#F3F4F0"},children:" Function"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:","})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#DBF6A2"},children:"  validationRules"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#ECFAD1"},children:"?:"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#1976D2","--shiki-dark":"#FF99E0"},children:" any"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#24292EFF","--shiki-dark":"#CFD3C5"},children:"[]"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:","})]}),"\n",(0,e.jsxs)(h.span,{children:[(0,e.jsx)(h.span,{style:{"--shiki-light":"#6E7557","--shiki-dark":"#6E7557"},children:"})"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#E10198","--shiki-dark":"#ECFAD1"},children:":"}),(0,e.jsx)(h.span,{style:{"--shiki-light":"#0E0F0B","--shiki-dark":"#F3F4F0"},children:" Handler"})]})]})}),"\n",(0,e.jsx)(h.p,{children:"Constructs an Express handler based on a GraphQL schema."}),"\n",(0,e.jsxs)(h.p,{children:["See the ",(0,e.jsx)(h.a,{href:"/graphql-js/running-an-express-graphql-server/",children:"tutorial"})," for sample usage."]}),"\n",(0,e.jsxs)(h.p,{children:["See the ",(0,e.jsx)(h.a,{href:"https://github.com/graphql/graphql-http",children:"GitHub README"})," for more extensive documentation, including how to use ",(0,e.jsx)(h.code,{children:"graphql-http"})," with other server frameworks and runtimes."]})]})},"/graphql-js/graphql-http",{filePath:"src/pages/graphql-js/graphql-http.mdx",timestamp:1789481543e3,pageMap:l.v,frontMatter:{title:"graphql-http"},title:"graphql-http"},"undefined"==typeof RemoteContent?a:RemoteContent.useTOC)}},function(i){i.O(0,[3556,5043,2888,9774,179],function(){return i(i.s=11534)}),_N_E=i.O()}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.