Flask-RESTful与Flask-RESTplus的比较

95

除了使用Swagger UI自动生成交互式API文档的能力之外,使用Flask-RESTplus相比Flask-RESTful还有其他真正的优势吗?


8
我同意:考虑到这两个API有多么相似,听听那些使用过两者的人的经验会非常好。 - Dave
Flask-RESTPlus的作者刚刚从同一个问题中添加了一些维护者到该项目:https://github.com/noirbizarre/flask-restplus/issues/593 - Xiang ZHU
2
FYI:有一个新的社区驱动分支 https://github.com/python-restx/flask-restx - bhathiya-perera
3个回答

84

我使用过这两个框架,选择 Flask-restplus 的唯一原因是希望自动生成 Swagger 文档。根据我的经验,没有其他明显的区别。Flask-RESTplus 最初是 Flask-RESTful 的一个分支,如果您有兴趣,可以查阅提交记录以了解是否有其他显著差异。


13
出于这个原因,我们也使用了Flask-restplus。 - Julien Le Coupanec
8
请注意,如果你使用flask-RESTplus仅是为了生成文档,你可以使用Flask-RESTful和flasgger(https://github.com/rochacbruno/flasgger)。后者是一种Flask扩展工具,可以从API中注册的所有Flask视图中提取OpenAPI规范。请注意不改变原意。 - roipoussiere
1
你应该提到 Flask-RESTX。 - Martin Thoma

46

更新 阅读这个被接受的答案时,请考虑使用Flask-RESTX,它是Flask-RESTPlus的分支,作为替代选择进行维护。

我知道这个答案可能太晚了,但在将来它仍然可能有所帮助。

根据https://github.com/noirbizarre/flask-restplus/issues/593,Flask Restplus很可能已经死亡和被放弃。 最后一次提交是在2018年10月1日。该项目似乎不再积极维护。

因此,我建议您使用Flask Restful,而不是Restplus中自动生成的Swagger文档。由于Restplus没有得到维护,它很可能会变得过时。我认为在Restplus过时之前就开始使用Restful本身是更好的选择。

以上仅代表我的个人见解... :)


14
看起来这个项目终究不会夭折。根据这篇帖子,该项目的创始人noirbizarre正在寻找新的维护者并继续保持项目活跃。 - Prince Odame
2
是的,它并没有被放弃。还可以参考这篇文章:https://github.com/noirbizarre/flask-restplus/issues/612:“Flask-restplus未来组织和路线图”。 - roipoussiere
2
旧闻,该项目截至今日仍在积极维护。最后一次提交是3天前https://github.com/noirbizarre/flask-restplus/commits/master :) - Rick
2
更新:RESTPlus已经被分支到RESTX(增加了一些混淆..)https://github.com/noirbizarre/flask-restplus/pull/769 - Vano
2
我自己没有比较过这些,但如果ReSTplus唯一明显的技巧是添加了Swagger文档(正如其他人所指出的),以及反复出现的不稳定性(同样如其他人所指出的),为什么要冒险使用它呢?我们难道没有足够的技术在这短暂的生命中阅读、学习和跟踪吗?就像评论者@roipoussiere建议的那样,坚持使用Flask-ReSTful并让它为您工作。 :) - NYCeyes
显示剩余2条评论

0

更新 您还应考虑使用FastAPI,这是一个越来越流行的框架(请参见Google趋势)。并且,与Flask不同:具有内置的数据验证,支持异步任务,并且您还可以获得Swagger UI。

像Flask一样使用装饰器建立终端点,据说速度更快。

请查看:https://fastapi.tiangolo.com/

希望能有所帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接