Skip to main content

Create a WSGI Application for a GraphQL schema.

Project description

Create a WSGI Application for a GraphQL schema.

Usage

Use the GraphQLApplication from wsgi_graphql.

from wsgi_graphql import GraphQLApplication
application = GraphQLApplication(schema)

Options

  • schema: GraphQLSchema to serve with this application.
  • execute_options: Dictionary of options to be passed to graphql.execute via graphql_server.run_http_query. If the dictionary values are callable they will be called (see example below).
  • format_error: Function to format errors (defaults to graphql_server.default_format_error).
  • encode: Function to encode dictionary (defaults to graphql_server.json_encode).

All execute_options can be callable (i.e. functions) and will receive the current environ as an argument. This can be used for tasks like parsing authentication tokens and inserting results as context_value.

This snippet from the example.py sets the context_value to a dictionary containing the value of the request header greet.

application = GraphQLApplication(schema, execute_options={
    'context_value': lambda environ: {
        'greet': environ.get('HTTP_GREET')
    }
})

This curl command will return {"data":{"hello":"world"}}.

curl --request POST\
 --url http://localhost:8080\
 --header 'Content-Type: application/graphql'\
 --header 'greet: world'\
 --data 'query {hello}'

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for wsgi_graphql, version 0.0.2
Filename, size File type Python version Upload date Hashes
Filename, size wsgi_graphql-0.0.2.tar.gz (3.5 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page