Я пытаюсь вернуть созданный мной файл tar.gz (используя библиотеку tarfile
) из обработчика сервера GET tornado, чтобы позже я мог использовать его как new File([test.tar.gz])
из моего клиента.Я использую код ниже, но это возвращает двоичный файл tarfile, а не сам файл.Я также попытался с self.set_header('Content-Type', 'application/gzip')
, который, похоже, возвращает tar-файл без какого-либо сжатия.
@json_errors
@web.authenticated
@gen.coroutine
def get(self):
self.set_header('Content-Type', 'application/octet-stream')
with open('test.tar.gz', "rb") as f:
try:
while True:
_buffer = f.read(4096)
if _buffer:
self.write(_buffer)
else:
f.close()
self.finish()
return
except:
raise HTTPError(404)
raise HTTPError(500)
Любая помощь будет отличной ...