美文网首页数据工程师的日常
Flask RESTful API开发 高效定义资源

Flask RESTful API开发 高效定义资源

作者: 表现力 | 来源:发表于2018-03-13 00:46 被阅读85次

Flask-RESTful 库的应用

在RESTful API设计中,最核心的概念就是Resource。通过Flask-RESTful库,我们可以高效率地开发建立在Resource上的REST API。

pip install flask-restful

Flask 下的传统资源定义方法

  • 创建 Flask app
    app = Flask(__name__)

  • 设置路由(routes)
    @app.route('/item/<string:name>', methods=['GET'])

  • 为路由分配对应方法(methods)

    @app.route('/item/<string:name>', methods=['GET'])
    def get_item(name):
      return {'Item': name}, 200
    

这样就完成了对资源item的GET方法定义。

Flask-RESTful 下更高效的资源定义方法

  • 引入Flask-RESTful

    Flask-RESTful 提供了两个非常重要的class:

    from flask_restful import Resource, Api

  • 创建对象Api

    初始化过程中添加创建Api的步骤:

    app= Flask(__name__)
    api = Api(app)
    
  • 通过继承Resource类创建资源

    通过 Resource 类,需要定义的资源可以通过继承 Resource 来创建:
    class Item(Resource):

  • 在资源下添加CRUD操作方法

    而对此资源的CRUD操作则直接作为methods添加在类下:

    class Item(Resource):
    
      def get(self, name):
        return {'Student': name}, 200
    
      def post(self, name):
        pass
    
  • 将资源添加进Api,并设置资源与路由的对应关系:

    api.add_resource(Item, '/item/<string:name>')

相关文章

网友评论

    本文标题:Flask RESTful API开发 高效定义资源

    本文链接:https://www.haomeiwen.com/subject/brlafftx.html