graphql-playground-middleware-hapi
v1.6.20
Published
GraphQL IDE for better development workflows (GraphQL Subscriptions, interactive docs & collaboration).
Downloads
21,437
Readme
graphql-playground-middleware-hapi
Koa middleware to expose an endpoint for the GraphQL Playground IDE SECURITY NOTE: All versions of
graphql-playground-middleware-hapi
until1.6.13
or later have a security vulnerability when unsanitized user input is used while invokinghapiPlayground()
. Read more below
Installation
Using yarn:
yarn add graphql-playground-middleware-hapi
Or npm:
npm install graphql-playground-middleware-hapi --save
Usage
See full example in examples/basic.
minimal example:
const hapiPlayground = require('graphql-playground-middleware-hapi').default
const playground = {
plugin: hapiPlayground,
options: {
path: '/playground',
endpoint: '/graphql',
},
}
const app = new Hapi.server({
port: 3000,
})
app.register(playground)
;(async () => await app.start())()
Security Notes
All versions before 1.6.13
were vulnerable to user-defined input to hapiPlayground()
. Read more in the security notes
Security Upgrade Steps
To fix the issue, you can upgrade to 1.6.13
or later. If you aren't able to upgrade, see the security notes for a workaround.
yarn:
yarn add graphql-playground-middleware-hapi@^1.6.13
npm:
npm install --save graphql-playground-middleware-hapi@^1.6.13