【发布时间】:2011-03-20 00:39:37
【问题描述】:
场景:我有一个 c# .net 网页。我希望用户能够从我页面上的链接下载放置在远程服务器上的文件。但是,在下载时,我的服务器上应该有最小的负载。因此我尝试创建一个 HttpWebRequest 实例,传递了 download.php 路径
例如 HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create("http://servername/download.php");
myHttpWebRequest.Headers.Add (“内容处置”,“附件;文件名=XXX.pdf”); myHttpWebRequest.ContentType = "应用程序/pdf";
在会话中传递了httprequest对象;然而,在另一个页面上阅读 httpwebresponse 时,内容类型被重置为“text/html”。
php 文件也读取标题并使用 readfile 命令下载文件。它给出了以下错误。 警告:readfile() [function.readfile]:在服务器配置中禁用 URL 文件访问
【问题讨论】:
-
感谢您提供的信息。我尝试过更改脚本。我在我的 c# 代码中添加了以下内容,我在 php 文件中读取了这些标头并相应地设置了标头。 IE 响应并加载文件,但 Chrome 和 Firefox 显示二进制数据。谢谢你的信息。我尝试过更改脚本。我在我的 c# 代码中添加了以下内容 myHttpWebRequest.Headers.Add("DESC", "File Transfer"); myHttpWebRequest.Headers.Add("DISP", "附件;文件名=cards.jpg"); myHttpWebRequest.Headers.Add("CONT", "image/jpeg"); myHttpWebRequest.Headers.Add("ENCODE", "binary");
标签: php .net-3.5 c#-3.0 download