Flask MethodView 与 Flask-Restful 资源

问题描述 投票:0回答:2

MethodView 和 Resource 有什么区别?

它通过flask-restful实现API:

class API(Resource):
    decorators = [...,]

    def get(self):
        # do something
    def post(self):
        # do something
    def put(self):
        # do something
    def delete(self):
        # do something

其实可以用flask代替:

class API(MethodView):
    decorators = [...,]

    def get(self):
        # do something
    def post(self):
        # do something
    def put(self):
        # do something
    def delete(self):
        # do something

我认为 Flask 在建立 Restful API 方面已经提供了足够多的内容。我找不到flask-restful可以比flask做更多的事情,因为它们在相同的机制类中具有CRUD方法和装饰器。 Flask-restful 有什么特别之处?

我正在评估 Flask-Restful 对我来说是否真的有必要。请告诉我,谢谢。

python rest flask flask-restful
2个回答
5
投票

我想知道同样的事情,根据这篇文章,资源是从 Methodview 继承的(http://blog.miguelgrinberg.com/post/designing-a-restful-api-using-flask-restful)。文章还描述了与普通 Flask 相比的附加值,例如“Flask-RESTful 提供了一种更好的方法来使用 RequestParser 类处理此问题。该类的工作方式与命令行参数的 argparse 类似。” API 的大部分工作仍然与身份验证和安全性有关,例如参数/数据检查。

感谢 Miguel 的精彩博客。我使用flask-restful,因为它看起来相当成熟。

如果你的需求非常小,那么我认为你可以使用仅烧瓶的方法。


0
投票

之前给出的答案本来可以更简洁:

flask_restful.Resource (v0.3.10) 继承自flask.views.MethodView

© www.soinside.com 2019 - 2024. All rights reserved.