跳转到主要内容

未提供项目描述

项目描述

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 (5.3 kB 查看哈希值)

上传时间

由以下机构支持