aboutsummaryrefslogtreecommitdiff
path: root/src/main.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.py')
-rw-r--r--src/main.py40
1 files changed, 22 insertions, 18 deletions
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("/<file_id:str>")
+async def file_page(request, file_id):
+ return await controller.file(file_id, download = False)
+
+@app.get("/<file_id:str>/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)