gpt4 book ai didi

python - Flask-reSTLess 中的 PATCH_MANY 预处理器中的 search_params 为空

转载 作者:行者123 更新时间:2023-12-01 05:10:41 24 4
gpt4 key购买 nike

我通过 PUT 发出了以下 HTTP 请求:

http://example.com/api/student?q=%7B%22filters%22:%5B%7B%22name%22:%22id%22,%22op%22:%22%3D%3D%22,%22val%22:1%7D%5D,%22disjunction%22:true%7D

其中查询字符串解码为:

q:{"filters":[{"name":"id","op":"==","val":1}],"disjunction":true}

在我的 Flask-reSTLess 代码中,我使用以下选项创建端点:

    {
'model': Student,
'methods': ['GET', 'PUT', 'PATCH', 'POST', 'DELETE'],
'preprocessors': {
'POST': [pre_post_student],
'PATCH_MANY': [pre_patch_many_student]
},
'allow_patch_many': True
},

然后我定义了一个预处理器函数:

def pre_patch_many_student(search_params=None, data=None, **kw):
# Handle group management for the given students

print search_params

但是,当针对上述请求调用该函数时,search_params 显示为空字典。

为什么?

最佳答案

修补时,flask-reSTLess 不会查找 url 中的参数,而是将其作为请求正文的一部分。因此主体应该是:

{"q":{<filters and rules>},"field_to_edit":"content",...}

这可能已经太晚了,但无论如何。

关于python - Flask-reSTLess 中的 PATCH_MANY 预处理器中的 search_params 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24311226/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com