很多跟我一样的初学者小白,学了flask之后,不知道怎么用。这里提供一个简单的例子
目标:用flask做一个mock接口,提供调用地址,可传参数,判断参数是否为空,按自己要求返回需要的数值
步骤:
第一步,引入模块,需要用到flask里边的Flask和request
import flask
from flask import Flask, request
第二步:用flask web框架,通过flask提供的装饰器@app.route()将普通函数转换为服务
# 创建一个服务,把当前这个python文件当做一个服务
app = Flask(__name__)
第三步:写mock代码逻辑
#@app.route()可以将普通函数转变为服务
@app.route('/mock/' ,methods = ['POST'])#登录接口的路径为mock、请求方式为post
def mock():
# 获取通过url请求传参的数据
num1 = request.values.get('num1')
num2 = request.values.get('num2')
num3 = request.values.get('num3')
success = 'success'
fail = 'fail'
# 判断num1、2、3是否为空,为空直接失败。否则返回失败。
if num1 and num2 and num3:
dic = {'aerror_code': success, 'body': {'num1': num1, 'num2': num2, 'num3': num3}, 'jisuan': num1 + num2}
return dic
else:
dic = {'aerror_code': fail,'meg': '参数不全'}
return dic
第四步:在main里运行
if __name__ == '__main__':
app.run(host='0.0.0.0', port=8081, debug=True)# host = 0.0.0.0要写,不然别人没法访问
第五步:在api工具里调用,我用的是apipost
1、调用方法,按代码里定义的,写post
2、调用地址写:ip+duankou/上边写的mock路径
3、参数名,固定写num1、num2、num3,不然代码取不到对应的数值
点击【发送】就可以在实时响应中,查看到结果了。
以上。一个简单的mock服务接口例子就完成了。
这种方式经常用于:
1、对于研发人员:开发时,对方没按照约定写完代码,自己先写个mock代码做自己的事情
2、对于测试人员:测试时,研发没按约定写完代码,自己先写个mock代码做自己的事情
被调用的一方,接口稳定,基本不会出其他结果。但是网络不稳定。也可以写个mock代码自己调自己