From e8da9790dc6d55cd2e8883322cdf9a7bf5b4f5b7 Mon Sep 17 00:00:00 2001 From: Joris Date: Mon, 20 May 2024 20:09:01 +0200 Subject: Migrate to sanic --- src/main.py | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) (limited to 'src/main.py') diff --git a/src/main.py b/src/main.py index 56c8e9e..b678aae 100644 --- a/src/main.py +++ b/src/main.py @@ -1,24 +1,28 @@ -import http.server -import logging +import sanic import os -import sys -import server +import controller -logger = logging.getLogger(__name__) -hostName = os.environ['HOST'] -serverPort = int(os.environ['PORT']) +app = sanic.Sanic("Files") -if __name__ == '__main__': - logging.basicConfig(stream=sys.stdout, level=logging.INFO) - webServer = http.server.HTTPServer((hostName, serverPort), server.MyServer) - logger.info('Server started at http://%s:%s.' % (hostName, serverPort)) +@app.get("/") +async def index(request): + return controller.index() - try: - webServer.serve_forever() - except KeyboardInterrupt: - pass +@app.post("/", stream = True) +async def upload(request): + return await controller.upload(request) - webServer.server_close() - conn.close() - logger.info('Server stopped.') +@app.get("/") +async def file_page(request, file_id): + return await controller.file(file_id, download = False) + +@app.get("//download") +async def file_download(request, file_id): + return await controller.file(file_id, download = True) + +app.static("/static/", "static/") + +if __name__ == "__main__": + debug = 'DEBUG' in os.environ and os.environ['DEBUG'] == 'TRUE' + app.run(debug=debug, access_log=True) -- cgit v1.2.3