我需要确保每当用户对资源发出GET请求时,它总是包含一个名为“_mes”的特定字段。当用户指定投影时,这会成为一个问题,所以我总是试图添加它
app.on_pre_GET_my_resource = pre_get_my_resource_callback
...
...
...
def pre_get_my_resource_callback(request, lookup):
"""Always add _mes to projection"""
projection = json.loads(request.args['projection']) if 'projection' in request.args else None
projected_field = True if projection is None or ('_mes' in projection and projection['_mes'] == 1) else False
if not projected_field:
projection['_mes'] = 1
request.args['projection'] = json.dumps(projection)
print(projection)
问题是请求是不可变的,因此它失败了
我不想自己重复完全相同的查询并复制它,必须在…之后合并两者。。。我想夏娃一定有办法做到这一点,但怎么做呢?