安装
使用 pip
安装 Flask-RESTful
:
pip install flask-restful
一个最小的 API
from flask import Flask
from flask_restful import Resource, Api
app = Flask(__name__)
api = Api(app)
class HelloWorld(Resource):
def get(self):
return {'hello': 'world'}
api.add_resource(HelloWorld, '/')
if __name__ == '__main__':
app.run(debug=True)
把上述代码保存为 api.py
,并用 $ python api.py
运行。浏览器打开 http://127.0.0.1:5000/
就能看到:
{"hello": "world"}

也可以使用系统的 curl
(详细用法见:curl 的用法指南)测试你的 API:
$ curl http://127.0.0.1:5000/

Resource
Flask-RESTful
是通过 Resource
类上定义方法来实现各种 HTTP
方法的访问控制的。
from flask import Flask, request
from flask_restful import Resource, Api
app = Flask(__name__)
api = Api(app)
todos = {1: 'learn flask'}
class TodoSimple(Resource):
def get(self, todo_id):
return {todo_id: todos[todo_id]}
def put(self, todo_id):
todos[todo_id] = request.form['data']
return {todo_id: todos[todo_id]}
api.add_resource(TodoSimple, '/<int:todo_id>')
if __name__ == '__main__':
app.run(debug=True)
上述代码定义了 Resource 类,当用 get
方法访问该 API
时,get()
函数就会执行,其他 post
、put
、delete
方法同理。同时可以用 flask 的方法设置 url 的参数。
带上状态码可以这样操作:
class TodoSimple(Resource):
def get(self, todo_id):
return {todo_id: todos[todo_id]}, 201
网友评论