GraphQL Adapter for Python.
Project description
GraphQL Adapter
The graphql_adapter
module is a Python package that simplifies interactions with GraphQL servers. It abstracts away some of the pain points of using Python with GraphQL by providing a streamlined, asynchronous interface for sending GraphQL queries and mutations.
Installation
pip install graphql-adapter
Usage
The graphql_adapter
module exports a single async function graphql_request
.
Here's an example of how to use it:
from graphql_adapter import graphql_request
# A simple example query
query = """
query {
test {
field1
field2
}
}
"""
variables = {"key1": "value1", "key2": "value2"}
response = await graphql_request(
query=query,
variables=variables,
graphql_server="http://localhost:4000/graphql",
query_path="./gql"
)
print(response)
Function Parameters
query
: The name of the GraphQL query or mutation. This should match the name of a.gql
file in yourquery_path
directory.variables
: A dictionary of variables to pass to the GraphQL query or mutation.graphql_server
: The URL of your GraphQL server.headers
(optional): A dictionary of headers to include in the request. Default is an empty dictionary.query_path
(optional): The relative path to the directory containing your.gql
files. Default is./gql
.
Return Values
The function will return the data from the GraphQL server's response. This data is processed as follows:
- If the server returns an error, the function will raise an exception.
- If the query was a mutation and the data contains a
returning
field, the function will return the value of thereturning
field. - If the data is a list, the function will return the first item in the list.
- If the data is a dictionary with only one item, the function will return that item.
Please note that due to the async nature of the function, you should await
the function call to get the response.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
graphql_adapter-0.0.2.tar.gz
(2.6 kB
view hashes)
Built Distribution
Close
Hashes for graphql_adapter-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e876c2e3a6a5a0667531b6ebd4f656960bb116b3cc61ba0392c4ee83dd5d26e |
|
MD5 | 34ac2e99882d9eac3d4b9883e3118c20 |
|
BLAKE2b-256 | 5bdad643e0507ede82798de99ba85fd29a6c9df0ef5c707148d82ee24ef6c563 |