@graphile-contrib/graphql-sse
PostGraphile support for GraphQL over Server-Sent Events (SSE) powered by graphql-sse.
- Doesn't mess with the schema update stream on
eventSourceRoute
, both can exist on the same route -
PUT
andDELETE
methods are allowed through CORS on theeventSourceRoute
in order to support the "single connection mode" - The client can use the
X-GraphQL-Event-Stream
header for SSE endpoint discovery
Getting started
Install
npm install --save graphql-sse @graphile-contrib/graphql-sse
or
yarn add graphql-sse @graphile-contrib/graphql-sse
Integrate the plugin
PostGraphile CLI
postgraphile \
--plugins @graphile/graphql-sse \
...
PostGraphile library
import { postgraphile, makePluginHook } from 'postgraphile';
import GraphQLSSEPlugin from '@graphile-contrib/graphql-sse';
const postGraphileMiddleware = postgraphile(databaseUrl, 'app_public', {
pluginHook: makePluginHook([GraphQLSSEPlugin]),
eventStreamRoute: '/graphql/stream', // default
});
Use the client
Connect to the specified PostGraphileOptions.eventStreamRoute
.
For further usage inspiration, please consult the graphql-sse
readme.