Apollo-compatible persisted queries for Strawberry
Project description
🍓Strawberry Persisted Queries
Apollo-compatible persisted queries for Strawberry.
Usage
Add PersistedQueriesExtension()
to your extensions.
import strawberry
from strawberry_persisted_queries import PersistedQueriesExtension
schema = strawberry.Schema(
query=Query,
extensions=[
PersistedQueriesExtension(),
],
)
Django
For Django users, a Django cache backend is available. This uses the default cache set in Django.
from strawberry_persisted_queries.django_cache import DjangoPersistedQueryCache
PersistedQueriesExtension(cache_backend=DjangoPersistedQueryCache())
Safelisted Queries
DictSafelist
can be used to require persisted queries to already be saved.
This can be used with a build tool to ensure only queries used within an app are available.
from strawberry_persisted_queries.safelisting import DictSafelist
PersistedQueriesExtension(safelist=DictSafelist({
'sha256Hash': 'query {...}',
}))
Custom Cache Backends
Custom cache backends allow using another cache for persisted queries, such as memcached or a database.
Custom cache backends can inherit from strawberry_persisted_queries.PersistedQueryCache
.
from strawberry_persisted_queries.cache import PersistedQueryCache
class MyCache(PersistedQueryCache):
def get(self, query_hash):
return cache.get(query_hash)
def set(self, query_hash, value):
cache.set(query_hash, value)
PersistedQueriesExtension(cache_backend=MyCache())
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for strawberry_persisted_queries-1.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32aa8afa40e9de10e62c2fb208f773ea939bc7ca4236e6471cf5c75c3100254b |
|
MD5 | ce1c42ecbfafff97c47efaebce283d9b |
|
BLAKE2b-256 | 454dadea372d7aa3b617b088a42cc13b512ea549c51cd05f8bf32cde9aba4c1a |
Close
Hashes for strawberry_persisted_queries-1.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7c581f0cb90d3cd85a548965c9fb36abd67204245aea077843133da91dd71477 |
|
MD5 | 75fbdd412cdeca98b376820cbd07b535 |
|
BLAKE2b-256 | 5c43177945d17d1ca8e7b6653b3c2718ba481df82182196d79e31d93d07a78ad |