gpt4 book ai didi

python - 使用 Django 下载文件

转载 作者:行者123 更新时间:2023-12-04 15:07:11 29 4
gpt4 key购买 nike

这可能是一个简单的问题,但我不知何故无法找到解决方案。 Django 提供了很多关于上传文件的内容,但我该如何下载文件。

假设我们在 uploads/something.txt 上有一个 HTML 按钮作为文件。

我试过 django.views.static.serve ,但是这样做会在网页上打开一个文件。

我的问题很简单:我们网站的用户下载文件的最佳和最 Python 的方式是什么?

最佳答案

  • 您需要阅读该文件。
  • 使用 HttpResponse 提供服务以及适当的内容类型。

  • 这是一些示例代码:
    content = open("uploads/something.txt").read()
    return HttpResponse(content, content_type='text/plain')

    这应该提供一个文本文件。

    但是正如您所描述的,在某些浏览器上,它不会要求下载文件,而是会在浏览器中显示它。如果要显示下载提示,请使用以下命令:
    response = HttpResponse(open("uploads/something.txt", 'rb').read())
    response['Content-Type'] = 'text/plain'
    response['Content-Disposition'] = 'attachment; filename=DownloadedText.txt'
    return response

    但是,请注意,通过 nginx 或您选择的反向代理提供静态内容或上传的文件可能是一个更好的主意。通过 Django 发送大文件可能不是这样做的最佳方式。

    关于python - 使用 Django 下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43441882/

    29 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com