gql.transport.common.adapters.aiohttp
- class gql.transport.common.adapters.aiohttp.AIOHTTPWebSocketsAdapter(url: str | URL, *, headers: Mapping[str, str] | Mapping[istr, str] | CIMultiDict | CIMultiDictProxy | Iterable[Tuple[str | istr, str]] | None = None, ssl: SSLContext | Literal[False] | Fingerprint | None = None, session: ClientSession | None = None, client_session_args: Dict[str, Any] | None = None, connect_args: Dict[str, Any] | None = None, heartbeat: float | None = None, auth: BasicAuth | None = None, origin: str | None = None, params: Mapping[str, str] | None = None, proxy: str | URL | None = None, proxy_auth: BasicAuth | None = None, proxy_headers: Mapping[str, str] | Mapping[istr, str] | CIMultiDict | CIMultiDictProxy | Iterable[Tuple[str | istr, str]] | None = None, websocket_close_timeout: float = 10.0, receive_timeout: float | None = None, ssl_close_timeout: int | float | None = 10)
Bases:
AdapterConnectionAdapterConnection implementation using the aiohttp library.
- __init__(url: str | URL, *, headers: Mapping[str, str] | Mapping[istr, str] | CIMultiDict | CIMultiDictProxy | Iterable[Tuple[str | istr, str]] | None = None, ssl: SSLContext | Literal[False] | Fingerprint | None = None, session: ClientSession | None = None, client_session_args: Dict[str, Any] | None = None, connect_args: Dict[str, Any] | None = None, heartbeat: float | None = None, auth: BasicAuth | None = None, origin: str | None = None, params: Mapping[str, str] | None = None, proxy: str | URL | None = None, proxy_auth: BasicAuth | None = None, proxy_headers: Mapping[str, str] | Mapping[istr, str] | CIMultiDict | CIMultiDictProxy | Iterable[Tuple[str | istr, str]] | None = None, websocket_close_timeout: float = 10.0, receive_timeout: float | None = None, ssl_close_timeout: int | float | None = 10) None
Initialize the transport with the given parameters.
- Parameters:
url – The GraphQL server URL. Example: ‘wss://server.com:PORT/graphql’.
headers – Dict of HTTP Headers.
ssl – SSL validation mode.
Truefor default SSL check (ssl.create_default_context()is used),Falsefor skip SSL certificate validation,aiohttp.Fingerprintfor fingerprint validation,ssl.SSLContextfor custom SSL certificate validation.session – Optional aiohttp opened session.
client_session_args – Dict of extra args passed to
aiohttp.ClientSessionconnect_args – Dict of extra args passed to
aiohttp.ClientSession.ws_connect()heartbeat (float) – Send low level ping message every heartbeat seconds and wait pong response, close connection if pong response is not received. The timer is reset on any data reception.
auth – An object that represents HTTP Basic Authorization.
BasicAuth(optional)origin (str) – Origin header to send to server(optional)
params –
Mapping, iterable of tuple of key/value pairs or string to be sent as parameters in the query string of the new request. Ignored for subsequent redirected requests (optional)
Allowed values are:
collections.abc.Mappinge.g.dict,multidict.MultiDictormultidict.MultiDictProxycollections.abc.Iterablee.g.tupleorliststrwith preferably url-encoded content (Warning: content will not be encoded by aiohttp)
proxy – Proxy URL,
strorURL(optional)proxy_auth (aiohttp.BasicAuth) – an object that represents proxy HTTP Basic Authorization (optional)
websocket_close_timeout (float) – Timeout for websocket to close.
10seconds by defaultreceive_timeout (float) – Timeout for websocket to receive complete message.
None(unlimited) seconds by defaultssl_close_timeout – Timeout in seconds to wait for the ssl connection to close properly
- async connect() None
Connect to the WebSocket server.
- async send(message: str) None
Send message to the WebSocket server.
- Args:
message: String message to send
- Raises:
TransportConnectionFailed: If connection closed
- async receive() str
Receive message from the WebSocket server.
- Returns:
String message received
- Raises:
TransportConnectionFailed: If connection closed TransportProtocolError: If protocol error or binary data received
- async close() None
Close the WebSocket connection.
- property headers: Mapping[str, str] | Mapping[istr, str] | CIMultiDict | CIMultiDictProxy | Iterable[Tuple[str | istr, str]] | None
Get the response headers from the WebSocket connection.
- Returns:
Dictionary of response headers
- property response_headers: Dict[str, str]
Get the response headers from the WebSocket connection.
- Returns:
Dictionary of response headers
- url: str
- connect_args: Dict[str, Any]
- subprotocols: List[str] | None