未提供项目描述
项目描述
pecan-notario
为Pecan与Notario(http://notario.cafepais.com)进行JSON验证。
在其最简单形式中,您需要定义一个模式并装饰控制器方法,如下所示
schema = ('foo', True) @expose() @validate(schema) def some_controller(self, **kw): return dict()
上述控制器方法,使用Notario模式,将需要一个 foo 键和一个 True 值,否则(默认情况下)将HTTP响应设置为 400(无效请求),并将验证错误添加到 request.pecan['schema'].errors。
使用处理程序
如果需要更细致地处理错误条件,可以将处理程序传递给装饰器以显式处理错误。
@expose() @validate(some_schema, '/some/handler') def some_controller(self, **kw): return dict()
在这种情况下,‘/some/handler’将是一个可以直接处理附加到请求对象(在 request.validation_error 上)的错误控制器方法的控制器方法。
Notario异常将包括一个包含特定错误消息的 reason 属性,如果自定义验证器失败并包含错误消息,则会引发此错误消息。在这种情况下,处理程序将像下面这样访问此Notario异常属性
request.validation_error.reason
项目详情
关闭
pecan-notario-0.0.3.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 92114160ee39832d9dd523f1859ea9ba7d8260a0972eb5140fda9cfc39fd8536 |
|
MD5 | 72664d105f71bfbe69d908ec77506366 |
|
BLAKE2b-256 | 2795acc1c292afd73065d9433092247ec3a9edeccd3df4069236ba11f51ccea1 |