Ariadne is a Python library for implementing GraphQL servers using a schema-first approach.
—
Quality
Pending
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Support for GraphQL multipart file uploads following the GraphQL multipart request specification.
def combine_multipart_data(operations: dict, files_map: dict, files: dict) -> dict:
"""
Combine multipart form data for GraphQL file uploads.
Parameters:
- operations: GraphQL operations dict
- files_map: Mapping of file placeholders to form fields
- files: Dict of uploaded files
Returns:
Combined GraphQL request dict with file objects
"""upload_scalar: ScalarTypefrom ariadne import make_executable_schema, upload_scalar
type_defs = """
scalar Upload
type Mutation {
uploadFile(file: Upload!): String!
}
"""
mutation = MutationType()
@mutation.field("uploadFile")
def resolve_upload_file(_, info, file):
# file is a file-like object
content = file.read()
return f"Uploaded {len(content)} bytes"
schema = make_executable_schema(type_defs, mutation, upload_scalar)Install with Tessl CLI
npx tessl i tessl/pypi-ariadne