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'