使Django返回响应为“不同的文件名”

时间:2009-05-07 08:49:11

标签: django http filenames httpresponse

我有一个Django视图,它返回一个具有特殊MIME类型的HttpResponse,以使用户的浏览器“下载”该文件,而不是在浏览器中查看它。问题是响应将保存的默认文件名是用户尝试访问的URL。

有没有办法在HttpResponse对象中包含默认文件名,还是必须重定向到其他网址以实现此目的?

1 个答案:

答案 0 :(得分:32)

docs中有一个相关的例子:

from django.http import HttpResponse

def some_view(request):
    # Create the HttpResponse object with the appropriate headers.
    response = HttpResponse(mimetype='application/pdf', <snip>)
    response['Content-Disposition'] = 'attachment; filename="somefilename.pdf"'
    return response