GetFile.py 525 B

1234567891011121314151617181920212223
  1. import os
  2. from flask import send_from_directory
  3. from flask.views import View
  4. from pycs.database.File import File
  5. class GetFile(View):
  6. """
  7. returns binary file data
  8. """
  9. # pylint: disable=arguments-differ
  10. methods = ['GET']
  11. def dispatch_request(self, file_id: int):
  12. file = File.get_or_404(file_id)
  13. abs_file_path = file.absolute_path
  14. # return data
  15. file_directory, file_name = os.path.split(abs_file_path)
  16. return send_from_directory(file_directory, file_name)