Crate juniper_graphql_ws[][src]

Expand description


This crate contains an implementation of the graphql-ws protocol, as used by Apollo.


Implements the graphql-ws protocol. This is a sink for TryInto<ClientMessage> and a stream of ServerMessage.

ConnectionConfig is used to configure the connection once the client sends the ConnectionInit message.

The payload for errors that are not associated with a GraphQL operation.

Sent after execution of an operation. For queries and mutations, this is sent to the client once. For subscriptions, this is sent for every event in the event stream.

A payload for errors that can happen before execution. Errors that happen during execution are instead sent to the client via DataPayload. ErrorPayload is a wrapper for an owned GraphQLError.

The payload for a client’s “start” message. This triggers execution of a query, mutation, or subscription.


ClientMessage defines the message types that clients can send.

ServerMessage defines the message types that servers can send.


Init defines the requirements for types that can provide connection configurations when ConnectionInit messages are received. Implementations are provided for ConnectionConfig and closures that meet the requirements.

Schema defines the requirements for schemas that can be used for operations. Typically this is just an Arc<RootNode<...>> and you should not have to implement it yourself.