文章目录
简介
$$
REST又被称为表征性状态传输,是指在客户端与服务端之间传输信息的一种方式,在WEB的应用程序
中,一般都是基于HTTP的REST服务,这样的好处是可以使用应用层的协议来方便的实现客户端与服务端
之间的基本通信。REST它与语言无关,它更多的是制定了客户端与服务端之间的交互规则,即使在目前主
流的微服务架构中,也是使用了轻量级的通信方式,也就是基于HTTP的REST的交互方式,在这样的一种
交互方式中,一般的数据格式会使用JSON或者是XML的。在HTTP的协议中,客户端与服务端的之间的交互,
首先不会去太多的关心底层网络传输层的协议,更多关注的是应用层客户端与服务端之间的交互请求
$$
Flask-Restful下载
pip install flask
pip install flask-restful
pip install flask-httpauth
API开发
第一个api实例
类试图的方式 可以把路由地址放在add_resource方法里
from flask import Flask,jsonify
from flask_restful import Api,Resource
app=Flask(__name__)
api=Api(app)
class IndexView(Resource):
def get(self):
return {
"status":0,"code":200,"msg":"ok","data":{
"userID":1001,"name":"wuya",
"age":18}}
# 把IndexView类的方法 映射到试图上 把类名传进行 第二个参数是路由地址
api.add_resource(IndexView,'/index/')
if __name__ == '__main__':
app.run(debug=True)
这就是第一个API程序 也是最简单的一个demo 启动这个程序后 访问127.0.0.1:5000/index/ 端口号后面的就是路由地址 访问在这个接口 就会执行 index函数
参数验证解析
尽管 Flask 能够简单地访问请求数据(比如查询字符串或者 POST 表单编码的数据),验证表单数据仍然很痛苦。Flask-RESTful 内置了支持验证请求数据,它使用了一个类似 argparse 的库。
add_argument类方法解析参数
add_argument 可以指定这个字段的名字,这个字段的数据类型等。以下将对这个方法的一些参数 做详细讲解
先来看一个简单示例。主要有三个步骤:
- reqparse.RequestParser():创建对象
- add_argument:接受参数
- parse_args(): 解析参数
from flask import *
from flask_restful import Api,Resource,reqparse
app=Flask(__name__)
api=Api(app)
class infoView(Resource):
def post(self):
parser = reqparse.RequestParser()#对reqparse模块下的RequestParser类进行实例化
parser.add_argument('username', type=str)#add_argument方法添加接收参数
args = parser.parse_args() #解析参数
return args
api.add_resource(infoView,'/info/')
if __name__ == '__main__':
app.run(debug