Eugene Pankov 0484b4c8d7
.
2021-07-28 22:14:34 +02:00

28 lines
1008 B
Python

import fsspec
from django.conf import settings
from django.http.response import HttpResponseRedirect
from django.views import static
from rest_framework.views import APIView
from urllib.parse import urlparse
class IndexView(APIView):
def get(self, request, format=None):
if settings.FRONTEND_URL:
return HttpResponseRedirect(settings.FRONTEND_URL)
return static.serve(request, 'index.html', document_root=str(settings.FRONTEND_BUILD_DIR))
class TerminalView(APIView):
def get(self, request, format=None):
response = static.serve(request, 'terminal.html', document_root=str(settings.FRONTEND_BUILD_DIR))
response['X-Frame-Options'] = 'SAMEORIGIN'
return response
class AppDistView(APIView):
def get(self, request, version=None, path=None, format=None):
fs = fsspec.filesystem(urlparse(settings.APP_DIST_STORAGE).scheme)
url = f'{settings.APP_DIST_STORAGE}/{version}/{path}'
return HttpResponseRedirect(fs.url(url))