1.flask-restful扩展的安装
Flask-RESTful 是一个 Flask 扩展,它添加了快速构建 REST API 的支持。
环境安装:(终端执行)
pip install flask-restful
2.官方文档:
3.构建RESTAPI
使用 flask-restful 构建RESTAPI只需要进行三步操作
3.1创建扩展/组件对象
api = Api(app)
3.2 定义类视图
class UserAPI(Resource):
pass
3.3 组件添加类视图
api.add_resource(UserAPI, '/user/auth')
4.代码示例:
from flask import Flask
from flask_restful import Api, Resource
app = Flask(__name__)
# 1. 创建API对象 用于管理类视图(资源)
api = Api(app)
# 2.定义类视图 继承Resource
class DemoResource(Resource):
def get(self):
params = get_params(
[
Argument("username", required=True, nullable=False),
Argument("password", required=True, nullable=False)
]
)
username = params['username']
password= params['password']
return {'foo': 'get'}
def post(self):
body_json = get_body_json()
username=body_json.get('username')
return {'foo': 'post'}
# 3.添加类视图 函数标记默认为类名小写
```python
api.add_resource(DemoResource, '/', endpoint='demo')
# @app.route('/')
# def index():
#
# return "index"
if __name__ == '__main__':
print(app.url_map)
app.run(debug=True)
utils.py
from flask_restful.reqparse import RequestParser
from flask import request, abort
def get_params(arguments, strict=False):
"""获取表单参数,url查询字符串参数等"""
parser = RequestParser()
for argument in arguments:
parser.add_argument(argument)
values_dict = parser.parse_args(strict=strict)
return value_dict
def get_body_json():
"""获取原生json入参"""
return request.get_json()