第五章 Flask模拟接口

本文详细介绍了Python轻量级Web框架Flask的安装与使用,包括在Mac和Windows上的安装,通过PyCharm连接数据库,以及创建路由、动态路由、限定参数类型、处理不同请求方式。此外,还展示了如何模拟登录接口,并提供了相应的代码示例。
摘要由CSDN通过智能技术生成

第一章 Jmeter安装(Mac版)
第二章 Jmeter安装(Windows版)
第三章 PyCharm连接数据库使用
第四章 Jemter连接数据库使用
第五章 Flask模拟接口
第六章 dubbo接口测试



一、Flask 概述

1、flask是⼀个使用python编写的轻量级web引用框架,可以使用python来迅速实现⼀个网站或者API的构建,flask是第三方库,需要使用PIP来进行安装。

二、Flask 安装

1、安装 Flask

在PyCharm中使用终端,输入pip install flask
在这里插入图片描述

2、验证 Flask

验证flask是否安装成功,可以使用命令pip show flask
在这里插入图片描述

三、Flask 使用

1、启动Flask 服务

在这里插入图片描述

# -*- coding: utf-8 -*-
# @Time  : 2022/6/14 17:40
# Author : 拒绝内卷的小测试

from flask import Flask

# 初始化Flask框架
app = Flask(__name__)

if __name__ == '__main__':
    app.run()

2、路由

Flask中的route()装饰器用于将URL绑定到函数。例如:
在这里插入图片描述
这样,就可以通过url参数’/ First_Blood’ 规则绑定对应的test_one()函数,直接在浏览器中访问。
在这里插入图片描述

# -*- coding: utf-8 -*-
# @Time  : 2022/6/14 17:40
# Author : 拒绝内卷的小测试

from flask import Flask

# 初始化Flask框架
app = Flask(__name__)

# http://127.0.0.1:5000/First_Blood
@app.route("/First_Blood")
def test_one():
    return "恭喜你,成功拿下一血!"

@app.route("/Double_Kill")
def test_two():
    return "恭喜你,完成双杀!"

if __name__ == '__main__':
    app.run()

3、动态路由

通过向规则参数添加变量部分,可以动态构建URL。例如:
在这里插入图片描述
在这里插入图片描述

# -*- coding: utf-8 -*-
# @Time  : 2022/6/14 17:40
# Author : 拒绝内卷的小测试

from flask import Flask

# 初始化Flask框架
app = Flask(__name__)

# http://127.0.0.1:5000/First_Blood
@app.route("/First_Blood/<username>")
# 通过url传入username带入函数中
def test_one(username):
    return f"恭喜你{username},成功拿下一血!"

if __name__ == '__main__':
    app.run()

4、限定类型

限定参数类型后,类型之外的请求参数会报404,无法访问。例如:
在这里插入图片描述
在这里插入图片描述

# -*- coding: utf-8 -*-
# @Time  : 2022/6/14 17:40
# Author : 拒绝内卷的小测试

from flask import Flask

# 初始化Flask框架
app = Flask(__name__)

# http://127.0.0.1:5000/First_Blood
@app.route("/First_Blood/<username>/<int:num>")
# 通过url传入username、num带入函数中,num限制只能为int类型
def test_one(username, num):
    return f"恭喜你{username},成功拿下{num}血!"

if __name__ == '__main__':
    app.run()

5、请求方式

默认情况下,Flask路由响应GET请求。上述方法中,也都是GET请求。但是,可以通过为route()装饰器提供方法参数来更改此首选项。POST请求方式例如:
在这里插入图片描述

# -*- coding: utf-8 -*-
# @Time  : 2022/6/14 17:40
# Author : 拒绝内卷的小测试

from flask import Flask

# 初始化Flask框架
app = Flask(__name__)

# 使用post方法发起请求
@app.route("/query", methods=["post"])
def query():
    return "这是一个post请求的响应数据"

if __name__ == '__main__':
    app.run()

post的请求方法无法在浏览器中直接调用,可以用Postman、Jmeter等工具发起请求,这里使用python的request库调用接口。
在这里插入图片描述

6、Mock登录接口

flask模拟一个登录接口,当账号密码正确时返回success,否则fail。
通过flask起一个服务,获取post请求参数的username及password,校验后返回结果:
在这里插入图片描述

# -*- coding: utf-8 -*-
# @Time  : 2022/6/14 17:40
# Author : 拒绝内卷的小测试

from flask import Flask, request

# 初始化flask框架
app = Flask(__name__)

@app.route("/login", methods=["post"])
def login():
    username = request.json.get("username")
    password = request.json.get("password")
    print(username)
    response = {"success": {"code": 0, "msg": "success"}, "fail": {"code": 1, "msg": "fail"}}
    if username == "tester_Xu":
        if password == "123456":
            return response["success"]
        else:
            return response["fail"]
    else:
        return response["fail"]

if __name__ == '__main__':
    app.run()

发起一个post请求,传入正确的用户名及密码,返回success:
在这里插入图片描述
当用户名或密码错误时,返回fail:
在这里插入图片描述

随手点赞一次,运气增加一份。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Flask是一个轻量级的Python Web框架,它可以用来快速开发Web应用程序。在Flask中,可以通过使用POST请求来创建一个接口,这个接口可以用来接收客户端发送过来的数据,并进行相应的处理。 要创建一个Flask的POST接口,首先需要使用Flask框架创建一个应用程序,然后使用@app.route()装饰器来定义接口的URL路径和请求方法。在定义POST接口时,需要指定methods参数为['POST'],以表明这是一个仅接受POST请求的接口。 在接口的处理函数中,可以通过request对象来获取客户端发送过来的数据,然后进行相应的处理。处理完数据之后,可以通过返回一个JSON格式的响应来将处理结果返回给客户端。 例如,可以用以下代码来创建一个简单的POST接口: ```python from flask import Flask, request, jsonify app = Flask(__name__) @app.route('/post-example', methods=['POST']) def post_example(): data = request.get_json() # 获取客户端发送过来的JSON数据 # 对数据进行处理 result = {'message': 'Data received successfully'} return jsonify(result) # 返回处理结果 ``` 通过上面的代码,就可以创建一个名为'post-example'的POST接口,当客户端向这个接口发送POST请求时,Flask应用程序会接收到数据并返回处理结果。 总的来说,Flask的POST接口可以帮助我们接收客户端发送的数据,并进行相应的处理,是一个非常常用的Web开发功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拒绝内卷的小测试

感谢老板的投喂

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值