Как объединить pdf в Django, когда файлы защищены и обслуживаются X-sendfile и Apache / Nginx? - PullRequest
0 голосов
/ 01 февраля 2020

РЕДАКТИРОВАТЬ: найдено решение. Получите pdf индивидуально, используя request.get (url, auth), где url обслуживается x-senfile, и используйте pypdf2 для объединения как обычно.

В настоящее время я использую x-sendfile и Apache для обслуживания защищенных мультимедийных файлов в веб-приложении на основе django. Сервер настроен так, что код имеет только косвенный доступ к защищенным медиа-файлам через apache и x-sendfile:

   if request.user.hasPermission():
      response['X-Sendfile'] = unicode(filename).encode('utf-8')
      return response

. Это прекрасно работает для 1 файла, но я хотел бы реализовать функцию позволяя пользователю объединить несколько файлов PDF вместе. Например:

     file1Path = foo1
     file2Path = foo2

     response[x-sendFile1] = unicode(file1Path).encode('utf-8')
     response[x-sendFile2] = unicode(file2Path).encode('utf-8')

     return response

Я новичок в django, и у меня возникают проблемы при согласовании традиционных методов слияния pdf (Django и weasyprint, слияние pdf ) с x -sendfile (https://www.nginx.com/resources/wiki/start/topics/examples/xsendfile/). Есть ли способ объединить несколько файловых ответов / x-sendfile вместе в Django?

...