subscriptions-transport-sse
A GraphQL Server-Side-Evenet (SSE) server and client to facilitate GraphQL subscriptions.
That's an API compatible SSE transport implementation of subscriptions-transport-ws.
Example
Getting Started
Using Yarn:$ yarn add subscriptions-transport-sse Or, using NPM:$ npm install --save subscriptions-transport-sse
ExpressJS Server
Starting with the server, create a new simple SubscriptionsManager, with a PubSub implementation:
const schema = {} // Replace with your GraphQL schema objectconst pubsub = const subscriptionManager = schema pubsub
Now, use your subscriptionManager, and create your SubscriptionServer:
const express = const app = const expressGraphQLSubscriptionsSSETransport = expressGraphQLSubscriptionsSSETransport app
Apollo Client (Browser)
For client side, we will use SubscriptionClient, and we also need to extend our network interface to use this transport for GraphQL subscriptions:
const httpClient = const sseClient = `https://my-graphql.example.com/subscriptions`const apolloClient = networkInterface:
Now, when you want to use subscriptions in client side, use your ApolloClient instance, with subscribe or subscribeToMore (according to your apollo-client usage):
apolloClient;
API
TBD, but compatible with subscriptions-transport-ws.
Issue Reporting
If you have found a bug or if you have a feature request, please report them at this repository issues section. Please do not report security vulnerabilities on the public GitHub issue tracker.
License
This project is licensed under the MIT license. See the LICENSE file for more info.
Thanks
You like this subscriptions-transport-sse and you want to see what coming next? Follow me on Twitter @mikebild
.
Enjoy!