python - 基于烧瓶的 REST api:marshmallow 与 flask-restful
问题描述
flask
在过去的几周里,我已经完成了一系列教程。
据我了解,要基于 构建一个简单的 REST api flask
,有(除其他外)两种方法:
采用
flask-restful
并使用它来创建Resources
然后通过适当的 url/路由公开并将它们与sqlalchemy
模型绑定对模型使用plain
sqlalchemy
,然后marshmallow
以json
格式进行反序列化和对象服务。
这两种方法有比较吗?我是这个领域的新手,这种marshmallow
方法似乎更快,也许更容易遵循。
flask-restful
与反序列化层相比,在采用方面有什么好处marshmallow
吗?
解决方案
Marshmallow 是一个序列化/反序列化库,flask-restful 是一个构建 REST API 的包。
是的,使用 flask-restful 有一些好处:
- 简单的参数解析
- 自定义错误处理程序
- 鼓励 REST 最佳实践
还有一个名为 Flask-Restplus 的包,它基于 Flask-resftul,但添加了一些功能,如 Swagger 文档生成、更好的错误处理等:https ://flask-restplus.readthedocs.io/en/stable/
推荐阅读
- c# - 依赖于父任务结果的链式异步函数
- haskell - 如何处理非穷举模式匹配?
- python - 使用包含 ModelChoiceField 的表单测试 django 视图
- rest - 为什么我的 API 会抛出 ERR_INCOMPLETE_CHUNKED_ENCODING 错误?
- python - 通过 text beautifulsoup 从第二个 div 中提取文本
- javascript - 未捕获的 SyntaxError:位置 4 处 JSON 中的意外标记
- c++ - 如何调用模板类型的正确构造函数?
- php - 我的 php 计算没有显示结果
- java - 使用 Helper 类简化复制粘贴过程
- amazon-web-services - 多个 Lambda 的 CloudFormation 警报