前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python API+Postman+jmeter

Python API+Postman+jmeter

作者头像
红目香薰
发布2022-11-30 19:11:42
发布2022-11-30 19:11:42
32100
代码可运行
举报
文章被收录于专栏:CSDNToQQCodeCSDNToQQCode
运行总次数:0
代码可运行

目录

Python API

get请求

post请求

Postman使用

jmeter

添加监听用于查看压测结果,Aggregate Report聚合报告、Graph Results图形结果、View Result in Table表格查看结果


Python API

通过python来创建api

需要使用到的包有:flask,使用pip install falsk安装即可。flask_cors,使用pip install flask_cores安装即可。flask_cores用于跨域。

get请求

示例编码:

代码语言:javascript
代码运行次数:0
运行
复制
import os
import json
from flask import Flask,request

app = Flask(__name__)
 
@app.route('/getInfo', methods=[ 'GET'])
def getInfo():
    """接口注释·获取结果信息"""
    result = []
    text1 = {'id':"1",'name':"小龙女",'introduce':"活死人墓,冰山美人"}
    text2 = {'id':"2",'name':"小师妹",'introduce':"无崖子的小师妹"}
    text3 = {'id':"3",'name':"王语嫣",'introduce':"琅嬛福地,神仙姐姐"}
    text4 = {'id':"4",'name':"赵灵儿",'introduce':"灵蛇岛,灵珑小女孩"}
    text5 = {'id':"5",'name':"刘亦菲",'introduce':"国民女神"}
    result.append(text1)
    result.append(text2)
    result.append(text3)
    result.append(text4)
    result.append(text5)
    return json.dumps(result,ensure_ascii=False)
if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8080)

这里的json序列化处理中添加了ensure_ascii=False代表能显示中文。我使用list格式,方便解析啥的。

直接启动服务。

接口访问:

可以看到接口返回的数据是中文的,如果去掉ensure_ascii=False就会变成以下样例:

跨域测试

代码语言:javascript
代码运行次数:0
运行
复制
<!DOCTYPE html>
<html lang="en">
 
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>跨域测试</title>
    <script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>
</head>
 
<body>
    <script>
        $(function(){
            $.ajax({
                url: "http://172.18.116.165:8080/getInfo",
                dataType: "json",
                type: "get",
                success: function(data) {
	console.log(data);
                    data.forEach(element => {
                        document.write(element.id);
                        document.write(element.name);
                        document.write(element.introduce);
                        document.write("<br/>");
                    });
                }
            });
        });
    </script>
</body>
 
</html>

可以正常加载,代表是跨域数据。

post请求

代码语言:javascript
代码运行次数:0
运行
复制
import os
import json
from flask import Flask,request
from flask_cors import CORS
app = Flask(__name__)

CORS(app, resources=r'/*')
@app.route('/getInfo', methods=[ 'GET'])
def getInfo():
    """接口注释·获取结果信息"""
    result = []
    text1 = {'id':"1",'name':"小龙女",'introduce':"活死人墓,冰山美人"}
    text2 = {'id':"2",'name':"小师妹",'introduce':"无崖子的小师妹"}
    text3 = {'id':"3",'name':"王语嫣",'introduce':"琅嬛福地,神仙姐姐"}
    text4 = {'id':"4",'name':"赵灵儿",'introduce':"灵蛇岛,灵珑小女孩"}
    text5 = {'id':"5",'name':"刘亦菲",'introduce':"国民女神"}
    result.append(text1)
    result.append(text2)
    result.append(text3)
    result.append(text4)
    result.append(text5)
    return json.dumps(result,ensure_ascii=False)


@app.route('/addInfo', methods=['POST'])
def addInfo():
    id=request.form.get("id")
    name=request.form.get("name")
    introduce=request.form.get("introduce")
    result={"id":id,"name":name,"introduce":introduce};
    return json.dumps(result,ensure_ascii=False)


if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8080)

Postman使用

使用Postman对post访问接口进行访问测试。

jmeter

打开jmeter.bat文件

操作面板

添加组

一般小测试写100就行,没有延迟,直接启动,不重复。

添加一个http访问

请求方法,其中4访问路径需要看具体的情况添加。如果需要参数,可以在下方点击add

单独添加http请求

使用方法

添加监听用于查看压测结果,Aggregate Report聚合报告、Graph Results图形结果、View Result in Table表格查看结果

执行

保存结果

可以重命名,可以直接重写替换。

gui视图

表格视图

一般接口要求都是200毫秒。

其实只访问10次还是很没有问题的。所以一般并发起来接口速度肯定慢。

祝大家有所收获。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Python API
    • get请求
    • post请求
  • Postman使用
  • jmeter
    • 添加监听用于查看压测结果,Aggregate Report聚合报告、Graph Results图形结果、View Result in Table表格查看结果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档