给定一个带有Content-Type: application/json["foo", "bar"]主体的POST请求,如何使用Cornice在金字塔中创建Colander模式来反序列化它。
这就是我想出来的:

class SimpleList(colander.SequenceSchema):
    items = colander.SchemaNode(colander.String())

它在香草夹竹桃的果酱里效果很好。但是,当我在飞檐上使用它时:
@simple_list_service.post(schema=SimpleList)
def simple_list_post(request):
    print(request.validated)

我明白了:
{"errors": [{"name": "items", "description": "items is missing", "location": "body"}], "status": "error"}

有什么建议吗?
谢谢!

最佳答案

当前版本的cornice只允许colander.MappingSchema进行模式验证。其他任何事情都会引发异常(显然,当你走得更远时,你在进行更改之前就已经这样做了)。
因此,除非情况发生变化,否则无法将列表验证为输入。

关于python - 使用Cornice在 Pyramid 中用滤锅反序列化顶层列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22310247/

10-12 18:13