Flask-RESTful编写接口,是通过编写一个个Resource类实现的。
# coding=utf-8
from flask_restful import Resource, Api
from flask import Flask, request
app = Flask(__name__)
api = Api(app)
todos = {} # 用来存放数据的字典
class SimpleResource(Resource):
def get(self, todo_id):
# 查询接口
# get请求中的参数为todo_id,并且直接返回todo_id及其在todos中的值组成的字典
return {todo_id: todos[todo_id]}, 201, {'Etag': 'some-opaque-string'} # 返回get请求的内容,自定义返回码, 头部
def put(self, todo_id):
# put新增接口
# 将请求数据中key为data的值
todos[todo_id] = request.form['data']
return {todo_id: todos[todo_id]}
# add_resource时,制定资源的路由,字符串todo_id与SimpleResource中使用的一致
api.add_resource(SimpleResource, '/<string:todo_id>')
if __name__ == '__main__':
app.run(debug=True)
测试代码: