2017-10-11 64 views
0

我正在使用graphene和flask來創建graphql服務器。我有一個相當昂貴的查詢,並希望緩存它。目前我手動執行模式來獲得JSON結果,然後我堅持在數據庫中。我想我可以在中間件中攔截查詢,但不知道如何將JSON轉換爲格式石墨烯知道如何處理將json轉換爲石墨烯graphql響應

回答

0

我曾經在這個網站找到了一個解決方案: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))