from flask.views import MethodView from flask import request,Response import json import traceback import logging import lib.api.vector.VectorStore as cv class MappingAPI(MethodView): lv_logger = logging.getLogger(__name__) def get(self): resp = { "test message": "working"} status = 200 return Response(json.dumps(resp), status=status, mimetype='application/json') def post(self): try: # Saving file lv_file = request.files['file'] lv_source_domain = request.form['source_domain'] lv_saved_file_name = 'storage/' + lv_file.filename.split('/')[-1] lv_file.save(lv_saved_file_name) # Processing the file lv_response = cv.fn_map_data(lv_saved_file_name,lv_file.filename.split('/')[-1],lv_source_domain) status = 200 return Response(lv_response, status=status, mimetype='application/json') except Exception as e: self.lv_logger.error(e) self.lv_logger.error(traceback.format_exc()) return Response(json.dumps({"error_message": str(e)}), status=500, mimetype='application/json')