在线
客服

在线客服
尊敬的客户,我们24小时竭诚为您服务 公司总机: 0755-83312037 (32条线)

客服
热线

0755-83312037 (32条线)
7*24小时客服服务热线

?

关注
微信

关注官方微信
TOP

返回
顶部

HTTP响应的头文件影响文件下载

发布时间:2019-04-13浏览次数:809 <p> </p> <table style="BORDER-RIGHT: #cccccc 1px dotted; TABLE-LAYOUT: fixed; BORDER-TOP: #cccccc 1px dotted; BORDER-LEFT: #cccccc 1px dotted; BORDER-BOTTOM: #cccccc 1px dotted" cellspacing="0" cellpadding="6" width="95%" align="center" border="0"><tbody><tr> <td style="WORD-WRAP: break-word" bgcolor="#fdfddf"> <font color="#ff0000">WebjxCom提示:</font><font color="#000000">设置HTTP文件下载四要诀.</font> </td> </tr></tbody></table> <p>网站不仅仅只包含网页,有时你需要提供用户能下载的文件。将你的文件放到服务器上并在网页中附上链接只是第一步,你还需意识到HTTP响应的头文件影响文件下载。</p> <p><strong>提示一:强制下载并控制文件名</strong></p> <p>在HTML中提供一个下载链接很简单:</p> <p><span><span class="code"><font face="NSimsun"><code>&lt;</code><code>a</code></font> <font face="NSimsun"><code>href</code><code>=</code><code>"http://download.httpwatch.com/httpwatch.exe"</code><code>&gt;Download&lt;</code><code>a</code><code>&gt;</code></font></span></span></p> <p><span><span><code></code></span></span>对于浏览器不知道如何呈现的二进制文件,如安装程序和ZIP文件,这工作的很好。这会出现一个对话框,允许用户将文件存储到本地。</p> <p align="center"><img border="0" alt="IE File Save Dialog" src="http://www.webjx.com/files/allimg/100402/0717040.jpg" width="413" height="282"></p> <p>问题在于,如果文件能呈现自己,不同的浏览器行为就不一样。例如,如果你链接一个纯文本文件,浏览器会打开它,不会提示保存下载。</p> <p align="center"><img border="0" alt="Plain Text in IE" src="http://www.webjx.com/files/allimg/100402/0717041.jpg" width="510" height="416"></p> <p>你可以加入以下响应头文件强制使用文件下载对话框。</p> <pre>Content-Disposition: attachment; filename=&lt;file name.ext&gt;</pre> <p>头部还可以控制默认的文件名,这可以帮助你方便的生成像getfile.aspx一样的内容,但你要提供一个更有意义的文件名给用户。</p> <p>对于静态内容,您可以在您的Web服务器手动配置额外的头文件。例如,下面是在IIS中设置:</p> <p align="center"><img border="0" alt="content_disposition_header" src="http://www.webjx.com/files/allimg/100402/0717042.jpg" width="481" height="456"></p> <p>为动态生成的内容,您需要在网页的服务器端代码中添加此头部。</p> <p>加入了头部之后,浏览器总是提示用户下载该文件:</p> <p align="center"><img border="0" src="http://www.webjx.com/files/allimg/100402/0717043.jpg" width="510" height="416" alt=""></p> <p></p>