""" POST /api/upload — загрузить ОДИН файл. Каждый вызов — новое соединение, передал → закрыл. Сессия связывает файлы через session_id. """ from flask import Blueprint, request, jsonify from session import create_session, add_file, file_count upload_bp = Blueprint("upload", __name__, url_prefix="/api") @upload_bp.route("/upload", methods=["POST"]) def upload(): sid = request.form.get("session", "") if not sid: sid = create_session() uploaded = request.files.getlist("files") if not uploaded: return jsonify({"ok": False, "error": "No file"}), 400 f = uploaded[0] if not f.filename: return jsonify({"ok": False, "error": "No filename"}), 400 ok = add_file(sid, f.filename, f.read()) if not ok: return jsonify({"ok": False, "error": "Session not found"}), 404 return jsonify({"ok": True, "session": sid, "count": file_count(sid)})