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测试

相关推荐
努力努力再努力wz14 小时前
【Lua 进阶系列】从 C++ 对象到 Lua 变量:一文理解 userdata、Lua 栈与元表绑定机制
c++·junit·lua
梅雅达编程笔记16 小时前
退款之后钱货两空:Flask售后退款状态机加库存回滚加原路退回
flask·毕设·状态机·电商系统·退款·售后·myd电商
阿卡好可爱17 小时前
Lua 热更新不生效:改完文件线上仍是旧逻辑,package.loaded 与 upvalue 重绑定详解
数据结构·分布式·后端·架构·lua
Joy T18 小时前
Redis Lua 原子限流:Lua 脚本、竞态条件与并发控制
数据库·redis·lua·限流·竞态条件·redis scripting
梅雅达编程笔记2 天前
忘记密码只能找客服:Flask邮箱验证码重置密码加限流防爆破
flask·限流·毕设·电商系统·myd电商·找回密码·邮箱验证码
坐吃山猪2 天前
Python22-PostMan调试MCP
测试工具·postman·mcp
hhcgchpspk3 天前
flask服务端页面预防被爬措施
后端·python·flask·网络爬虫·防爬
Blockbuater_drug5 天前
《经典机器学习实战》第 5 课:把模型做成 Web 应用(UFO)
flask·pickle·模型部署·web应用·机器学习上线·ufo数据集·rest接口
努力努力再努力wz5 天前
【Lua进阶系列】Lua 调试机制详解:从虚拟机调用栈、错误传播到 debug 库
junit·单元测试·lua
光谱SpectrAI6 天前
打开 Postman 会改 Codex?Windows 上 4 处都没有
postman