flask+pyinstaller实现mock接口,并打包到exe运行使用postman验证

flask代码

python 复制代码
from flask import Flask, request, jsonify

app = Flask(__name__)


@app.route("/login", methods=['POST'])
def login():
    username = request.json.get("username").strip()  # 用户名
    password = request.json.get("password").strip()  # 密码
    if username and password:
        if len(username) <= 2:
            return jsonify({"code": 999, "msg": "用户名不能少于2位"})
        elif len(password) <= 6:
            return jsonify({"code": 999, "msg": "密码不能少于6位"})
        else:
            return jsonify({"code": 200, "msg": "请求成功", 'token': 'ey66666', 'user_balance': 2000})
    else:
        return jsonify({"code": 999, "msg": "用户名/密码不能为空,请检查"})


@app.route("/goods_info", methods=['GET'])
def goods_info():
    token = request.headers.get("token")
    if token != 'ey66666':
        return jsonify({"code": 999, "msg": "请登录后重试"})
    return jsonify({'goods_id': 1, 'goods_inventory': 99, 'goods_price': 888.9, 'goods_notes': '这是一个虚假的货物'})


@app.route("/purchase", methods=['POST'])
def purchase():
    token = request.headers.get("token")
    if token != 'ey66666':
        return jsonify({"code": 999, "msg": "请登录后重试"})
    purchase_quantity = request.json.get("purchase_quantity") # 购买数量
    goods_id = request.json.get("goods_id") # 商品id
    user_balance = request.json.get("user_balance") # 用户余额
    print(purchase_quantity,goods_id,user_balance)
    if goods_id == 1:
        if 99 < purchase_quantity:
            return jsonify({"code": 999, "msg": "商品库存不足"})
        elif 888.9 * purchase_quantity > user_balance:
            return jsonify({"code": 999, "msg": "余额不足"})
        return jsonify({"code": 200, "msg": "购买成功", 'goods_id': goods_id})
    else:
        return jsonify({"code": 999, "msg": "商品不存在"})
if __name__ == '__main__':
    app.run(host='0.0.0.0', port=7979 , debug=True)

打包

命令执行目录要和py文件在一个目录里面

这里是打包运行exe程序时带cmd窗口,有修改ico图标和重新命名

python 复制代码
pyinstaller --onefile --icon=D:\log_v5\oco.ico --name=mock app.py

打包后会生成一个mock.exe

运行mock.exe

这2个地址可以访问的地址,如果处于同一个局域网下面,别人的电脑可以用http://192.168.3.100:7979来访问

下面的是一些接口参数说明

使用postman测试

相关推荐
心运软件15 小时前
Fashion-MNIST 图像分类实战:TensorFlow 五模型对比与 Flask 可视化
分类·flask·tensorflow
编码者卢布20 小时前
【Azure Storage Account】Azure Queue指标中的Transactions 高,真实业务处理的消息就多吗?
microsoft·flask·azure
weihubeats2 天前
10 MB 的 Postman 替代品,启动不到 1 秒
测试工具·postman
笨鸟先飞的橘猫2 天前
skynet热更新实现问题与排错记录
学习·lua·skynet
winfredzhang4 天前
从零实现“照片按地理位置显示在矢量地图上”:Flask + SQLite + Leaflet 全栈实战
python·sqlite·flask
龙腾AI白云6 天前
数字孪生、具身智能、世界模型三者交叉
数据库·人工智能·机器学习·flask·pygame
开开心心_Every6 天前
黄金价格软件国内外价格实时监控超方便
运维·服务器·游戏·智能手机·pdf·lua·perl
hhb_6187 天前
Flask+SQLite实现用户管理接口
python·sqlite·flask
笨鸟先飞的橘猫7 天前
C 扩展开发指南:从 Lua 到 skynet 的完整链路
c语言·lua
菜鸟阿达7 天前
Postman 有哪些免费/开源的替代品?2026 年接口工具选型参考
测试工具·开源·postman