initial commit
commit
975ee98909
|
@ -0,0 +1,33 @@
|
||||||
|
from flask import Flask, request, jsonify
|
||||||
|
from pymongo import MongoClient
|
||||||
|
from flask_cors import CORS
|
||||||
|
|
||||||
|
app = Flask(__name__)
|
||||||
|
CORS(app)
|
||||||
|
|
||||||
|
uri = 'mongodb+srv://amelija:This_is_what_u_need@extension.5qftc.mongodb.net/?retryWrites=true&w=majority&appName=Extension'
|
||||||
|
|
||||||
|
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)
|
Loading…
Reference in New Issue