用于api的数据验证和rest自动文档管理器。

restifier的Python项目详细描述


restifer是一个python库,用于创建和记录restful 原料药。
它包括一个中间件组件、一组装饰器和一个“表单” 用于验证/记录请求的库。中间产生一个 自动为api提供与swagger兼容的json规范。

作者

杰西·洛芙蕾丝jesse@hawatian.com

许可证

麻省理工学院的执照

用法

有关用法的信息,请参见tests.py。一般来说,创建一个有效负载 验证器构造这样的类:

classHelloMessage(Message):greeting=StringProperty(description="The greating.",validators=[regex(re.compile('^[A-Za-z]+$')),required()])classHelloResponseMessage(Message):salutation=StringProperty(description="The response.")tags=StringProperty(repeated=True)request=StructuredProperty(HelloMessage)

然后像这样装饰您的处理程序:

classHelloHandler(RequestHandler):@api(input=HelloMessage,output=HelloResponseMessage)defpost(self,obj):return{'salutation':'You are the best.'}

另外,要自动记录,请使用中间件:

routes=[('/api/v1/hello',HelloHandler)]app=DocumentedMiddleware(WSGIApplication(routes),api_base="/api/v1",api_overview="This is a super important API that does a lot of stuff.")

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java日期格式的月和日的固定长度?   无法将java ArrayList<String>转换为字符串。   java当我使用log4j 1.2.15时,编译时出现错误;当更改为1.2.16时,一切正常   java如何使用ArgumentMatchers将任何队列告知Mockito?   如何解决“java”。Java电子邮件API中的lang.ExceptionInInitializerError   java是实例化对象名并设置其值的通用方法   java在多线程环境中,如果一个线程崩溃,如何关闭JVM?   java WebDriverManager在selenium中获取不正确版本的驱动程序   如果JAVA中后减量的优先级高于前增量,那么为什么下面的代码输出为22.0而不是20.0。?   在hibernate中找不到java属性   当我用java运行调度程序时,什么都没有发生   jackson如何在java中从数据库中检索json对象   java安卓:如何在自定义适配器中设置侦听器并获取imagebutton单击的位置   java MySQLIntegrityConstraintViolationException:列“问题id”不能为空错误   JavaSpring自定义注销过滤器在注销前执行一些操作?   java如何返回常量集合   java使用subselect进行一对多分页   java二进制搜索基础。陷入无限循环