Content-disposition 认识

Content-disposition 是 MIME 协议的扩展,MIME 协议指示 MIME 用户代理如何显示附加的文件。当 Internet Explorer 接收到头时,它会激活文件下载对话框,它的文件名框自动填充了头中指定的文件名。(请注意,这是设计致使的;没法使用此功能将文档保存到用户的计算机上,而不向用户询问保存位置。)  python

        服务端向客户端游览器发送文件时,若是是浏览器支持的文件类型,通常会默认使用浏览器打开,好比txt、jpg等,会直接在浏览器中显示,若是须要提示用户保存,就要利用Content-Disposition进行一下处理,关键在于必定要加上attachment:django

Response.AppendHeader("Content-Disposition","attachment;filename=FileName.txt");浏览器

在线打开 设计

response.setHeader("Content-Disposition", "inline; filename=" + f.getName());

备注:这样浏览器会提示保存仍是打开,即便选择打开,也会使用相关联的程序好比记事本打开,而不是IE直接打开了。代理

举个例子:code

用django后台:文档

#只在浏览器中打开 不下载 
response = HttpResponse(buf.getvalue(), 'image/jpg')
response = HttpResponse(buf.getvalue(), 'image/jpg')
 #声明 Content-Disposition 下载
 response['Content-Disposition'] = 'attachment; filename=' + 'test.png'
相关文章
相关标签/搜索