Path: blob/master/webhooks/webhook_reader_flask.py
1072 views
"""1# Install flask2pip install Flask==1.1.234# Run app5python3 webhook_reader_flask.py67"""89import errno10import json11import os1213from flask import Flask, request1415app = Flask(__name__)1617upload_to = "uploads"181920@app.route("/", methods=["GET", "POST"])21def process_request():22if request.method == "GET":23return "Send a POST request instead."24else:25# Files exist for multipart/form-data26files = request.files27if files:28app.logger.debug(f"files: {files}")29app.logger.debug("Request contains image")30if not os.path.exists(upload_to):31try:32os.makedirs(upload_to)33except OSError as exc: # Guard against race condition34if exc.errno != errno.EEXIST:35raise3637for key in files.keys(): # The file doesn't exist under upload38app.logger.debug(f"key: {key}")39f = files[key]40f.save(f"{upload_to}/{f.filename}")41break4243form = request.form44json_data = json.loads(form["json"])45else:46app.logger.debug("Request contains json")47form = request.form48json_data = json.loads(form["json"])4950app.logger.debug(f"json_data: {json_data}")51return "OK"525354if __name__ == "__main__":55app.run(host="0.0.0.0", port=8001, debug=True)565758