0
我正在使用graphene和flask來創建graphql服務器。我有一個相當昂貴的查詢,並希望緩存它。目前我手動執行模式來獲得JSON結果,然後我堅持在數據庫中。我想我可以在中間件中攔截查詢,但不知道如何將JSON轉換爲格式石墨烯知道如何處理。將json轉換爲石墨烯graphql響應
我正在使用graphene和flask來創建graphql服務器。我有一個相當昂貴的查詢,並希望緩存它。目前我手動執行模式來獲得JSON結果,然後我堅持在數據庫中。我想我可以在中間件中攔截查詢,但不知道如何將JSON轉換爲格式石墨烯知道如何處理。將json轉換爲石墨烯graphql響應
我曾經在這個網站找到了一個解決方案:https://www.codementor.io/nikolayderkach/how-to-build-a-graphql-wrapper-for-a-restful-api-in-python-e7w68kcav
import json
from collections import namedtuple
def _json_object_hook(d):
return namedtuple('X', d.keys())(*d.values())
def json2obj(data):
return json.loads(data, object_hook=_json_object_hook)
...
class Foo(graphene.ObjectType):
something = ...
def resolve_something(self, info):
...
return json2obj(json.dumps(your_json_object))