11# GraphQLTransportWS
22
3+ [ ![ ] ( https://img.shields.io/endpoint?url=https%3A%2F%2Fswiftpackageindex.com%2Fapi%2Fpackages%2FGraphQLSwift%2FGraphQLTransportWS%2Fbadge%3Ftype%3Dplatforms )] ( https://swiftpackageindex.com/GraphQLSwift/GraphQLTransportWS )
4+ [ ![ ] ( https://img.shields.io/endpoint?url=https%3A%2F%2Fswiftpackageindex.com%2Fapi%2Fpackages%2FGraphQLSwift%2FGraphQLTransportWS%2Fbadge%3Ftype%3Dswift-versions )] ( https://swiftpackageindex.com/GraphQLSwift/GraphQLTransportWS )
5+
36This implements the [ graphql-transport-ws WebSocket subprotocol] ( https://github.com/enisdenjo/graphql-ws/blob/master/PROTOCOL.md ) .
47It is mainly intended for server support, but there is a basic client implementation included.
58
@@ -14,7 +17,7 @@ Features:
1417To use this package, include it in your ` Package.swift ` dependencies:
1518
1619``` swift
17- .package (url : " git@gitlab .com:PassiveLogic/platform /GraphQLTransportWS.git " , from : " <version>" )
20+ .package (url : " https://github .com/GraphQLSwift /GraphQLTransportWS" , from : " <version>" )
1821```
1922
2023Then create a class to implement the ` Messenger ` protocol. Here's an example using
@@ -25,12 +28,8 @@ import WebSocketKit
2528import GraphQLTransportWS
2629
2730/// Messenger wrapper for WebSockets
28- class WebSocketMessenger : Messenger {
29- let websocket: WebSocket?
30-
31- init (websocket : WebSocket) {
32- self .websocket = websocket
33- }
31+ struct WebSocketMessenger : Messenger {
32+ let websocket: WebSocket
3433
3534 func send <S >(_ message : S) where S: Collection , S.Element == Character async throws {
3635 try await websocket.send (message)
0 commit comments