当我点击pdf文件(此文件由coldfusion先前生成)链接时,它会在同一浏览器中打开(与内联相同)。
但我想要的是,当我点击链接时,浏览器应该询问“你想保存这个文件”窗口框。
我还有一个pdf文件可以完成我想要的同样的事情。有谁知道为什么两个pdf文件的工作方式不同?
<a href="./test.pdf">click Here</a>
答案 0 :(得分:3)
如果要强制下载文件而不是在浏览器中显示,可以通过添加Content-Disposition
标题来强制执行此操作,例如
<cfheader NAME="Content-Disposition" VALUE="attachment">
但是,假设您将通过CF传递PDF。如果您希望您的Web服务器直接提供它,您必须让它应用类似的标头。如果您确实想使用CF,可以执行类似
的操作<cfheader name="Content-Disposition" value="attachment; filename=#fileName#" />
<cfcontent type="application/pdf" file="#filepath#" />
但是非常确定用户无法通过此机制请求PDF以外的其他内容,或者您已经将自己打开了一个微不足道的Insecure Direct Object Reference漏洞。