使用flask进行mock接口

快速创建接口

在测试日常过程中,我们经常会遇到因为环境问题,或者是因为上下游,前后端开发进度不一,提测时间不一等情况。这时候我们可以通过mock的方式去完成一些操作。今天给大家分享一个通过flask去mock接口,之后在通过charles去进行map remote。

复制代码
from flask import Flask
from flask import request
import json
#实例化一个web服务对象
app=Flask(__name__)

@app.route('/mock/ytjaisjh',methods=['post'])
def data_mock():
    #获取客户端输入信息
    #获取json格式
    res=json.loads(request.get_data())

    #提取数据
    lover=res['lover']
    level=res['level']

    data = {
        'code': '0',
        'msg': 'ok',
        'lover': 'baobao',
        'level': 'zuiai',
        'describtion':'adc'
        }
    #把客户端的数据修改成我们的数据
    data['lover'] = lover
    data['lever'] = level

    if lover == 'baobao':
        data['describtion'] = 'love very much'
    elif lover == 'choubao':
        data['describtion'] = 'qi fu fu'


    return data

if __name__ == '__main__':

    app.run('127.0.0.1','1314')
复制代码
1
2
3
4
app.run(host='0.0.0.0',port=5566,debug=True)
#使用调试模式启动项目
#0.0.0.0表示可以用127.0.0.1 或者localhost 或者 本机ip三种方式访问接口
#0.0.0.0不能作为访问地址

获取请求传入的参数 模块 request:method,获取客户端提交请求的方法;header,获取请求头;args,获取get请求提交的数据 :request.args.get('account');form,获取post请求提交的数据 : request.form.get('account'),获取json格式传参是用request.get_json()

cookie:模块:make_response

  1. 使用步骤:
    1. 创建response对象res=make_response
    2. 设置cookie:res.set_cookie
    3. 获取cookie:request.cookie.get(key)
    4. 删除cookie :request.delete_cookie(key)

跨域问题:pip install flask_cors

快速开发一个web

1
2
3
4
5
6
7
8
9
10
from flask import Flask,render_template
 
app=Flask(__name__)
@app.route("/1")
def index():
    #Flask默认回去项目目录下的templates文件中寻找
    return render_template("index.html")
 
if __name__ == '__main__':
    app.run()

 创建一个templates文件夹,在文件下创建一个html文件

1
2
3
4
5
6
7
8
9
10
11
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <h1>hello world</h1>
</head>
<body>
 
</body>
</html>

 运行起来就可以了

 开发一个简单的登录接口

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from flask import Flask,render_template,request
 
app=Flask(__name__)
@app.route("/register")
def register():
    #Flask默认回去项目目录下的templates文件中寻找
    return render_template("register.html")
 
@app.route("/login",methods=['Post'])
def login():
    print(request.form)
    return "注册成功"
 
if __name__ == '__main__':
    app.run()

 register.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <h1>用户注册登录</h1>
    <form method="post" action="/login">
        <div>
            用户名:<input type="text" name="username"/>
        </div>
        <div>
            密码:<input type="password" name="password"/>
        </div>
        <div>
            <input type="submit" value="提交">
        </div>
    </form>
</head>
<body>
 
</body>
</html>

 

posted @   yetangjian  阅读(520)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示