Server/server.py

37 lines
1005 B
Python

from flask import Flask, request, jsonify
from flask_cors import CORS
from pymongo import MongoClient
from dotenv import load_dotenv
import os
load_dotenv()
app = Flask(__name__)
CORS(app)
uri = os.getenv("MONGO_URI")
mongo_client = MongoClient(uri)
db = mongo_client["user_interactions"]
collection = db["user_events"]
def validate_event(event):
required_keys = ["@version", "type", "TimeStamp", "data", "@timestamp"]
return all(key in event for key in required_keys)
@app.route('/submit', methods=['POST'])
def submit_event():
try:
event = request.get_json()
if not event or not validate_event(event):
return jsonify({"error": "Неверный формат"}), 400
collection.insert_one(event)
return jsonify({"message": "Действие успешно сохранено"}), 200
except Exception as e:
return jsonify({"error": str(e)}), 500
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0', port=5000)