python微服务框架
pyrs-resource的Python项目详细描述
项目主页:https://github.com/palankai/pyrs-resource
文档:http://pyrs-resource.readthedocs.org
问题跟踪:https://github.com/palankai/pyrs-resource/issues
这个包裹是干什么的
在python世界中有许多restful框架。其中一些是基于 其他的是基于烧瓶。我试过,但我有感觉,我想 要学一个,就用django或烧瓶甚至odoo。我不提 有时我发现它们不够灵活。所以,我决定自己写 独立的框架,任何人都可以使用,至少在提到的3 不同的世界。
坚果壳(注意,这将是一个成就)
frompyrsimportresourcefrompyrs.resourceimportGETclassUserResouce:@GET(response=ArrayOfUserSchema)defget_users(self):returnUser.objects.all()@PUT(path='/<int:user_id>',response=UserSchema,request=UserSchema)defupdate_user(self,user_id,body):user=get_object_or_404(User,pk=user_id)user.name=body['name']user.email=body['email']user.save()returnuserapp=resource.Application()app.add('/user',UserResouce)
在这个例子中,我展示了django(like)的例子。 架构基于pyrs.schema。 即使我倾向于使用这个框架,您也可以使用任何其他框架。
功能
- 使用简单类或函数(无继承)
- 包装错误处理,可以序列化错误
- 可扩展API
- 适用于Python2.7、3.3、3.4(针对这些版本进行测试)
- 用于扩展调度过程的挂钩
安装
$ pip install pyrs-resource
依赖关系
有关详细信息,请参见requirements.txt,但主要取决于Werkzeug。 我正在使用项目路由功能。也取决于 我在前言部分提到过。
重要注意事项
这段代码现在真的处于beta状态。我计划尽快释放 一个完全可以工作的代码,但现在它正在成形。
生态系统
这项工作是pyrs framework的一部分。 完整的框架遵循相同的实施灵活性的意图。 解决方案。
贡献
我真的很欢迎任何评论! 我会很高兴如果你叉我的代码或创建拉请求。 我已经有了很强的意见,我想实现什么,如何实现,尽管 欢迎帮助。
随时给我留言!