Python龙卷风文件下载

Python Tornado file download

我在不同的目录中有多个文件,我需要用户从网页访问这些文件。他们可以在浏览器中查看所有文本文件,但会下载所有 *.zip 文件。我在 Python 和 Tornado 中使用下面的代码下载文件时遇到困难

if directory.endswith('.zip'):
    print('Currently downloading:', url)
    self.set_header('Content-Type', 'application/octet-stream')
    self.set_header("Content-Description", "File Transfer")
    self.set_header('Content-Disposition', 'attachment; filename {}'.format(directory))

    with open(url, 'r') as f:
        try:
            while True:
                data = f.read(4096)
                if not data:
                    break
                self.write(data)
            self.finish()
        except Exception as exc:
            self.write(json_encode({'data': exc}))

我看了很多网上的帖子,他们建议我这样做,但我没有得到正确的结果。

请指教

我想出了它不起作用的原因,我正在使用 Ajax JQuery 发送请求,它正在收到响应但不知道该怎么做,所以我只是提交表格并正确下载文件。