main_view.py 1.0 KB

123456789101112131415161718192021222324252627282930
  1. from .tool.func import *
  2. from .main_error_404 import main_error_404
  3. def main_view(name = ''):
  4. file_name = re.search(r'([^/]+)$', name)
  5. if not file_name:
  6. return main_error_404(conn)
  7. else:
  8. file_name = file_name.group(1)
  9. dir_name = './views/' + re.sub(r'\.{2,}', '', re.sub(r'([^/]+)$', '', name))
  10. mime_type = file_name.split('.')
  11. if len(mime_type) < 2:
  12. mime_type = 'text/plain'
  13. else:
  14. mime_type = mime_type[len(mime_type) - 1].lower()
  15. image_type = ['jpeg', 'jpg', 'gif', 'png', 'webp']
  16. if mime_type in image_type:
  17. mime_type = 'image/' + mime_type
  18. elif mime_type == 'js':
  19. mime_type = 'text/javascript'
  20. elif mime_type == 'txt':
  21. mime_type = 'text/plain'
  22. else:
  23. mime_type = 'text/' + mime_type
  24. return flask.send_from_directory(
  25. dir_name, file_name,
  26. mimetype = mime_type
  27. )