请原谅我的无知。我正朝着正确的方向寻找一点。
我有一个包含一些(pdf)下载链接的页面。 如果我点击链接,pdf将在新页面中打开。 我可以看到pdf驻留在服务器上的文件夹。 如果我猜相同文件夹中的其他文件名,也许我会幸运的。 有些文件是私有的,所以我不希望用户从网址获得提示。 我怎么能模糊这个信息呢? 我们在后端运行.net 2。我可以调用一个方法并让文件打开吗?
任何帮助表示赞赏。我不知道该搜索什么让我开始。
由于
我们有一个.Net 2后端。
答案 0 :(得分:12)
您可以将每个PDF文件与数据库中的guid相关联,然后您可以创建一个页面DownloadPdf.aspx,并将其传递给guid以在文件系统上找到正确的文件,然后呈现它:
Response.Clear();
Response.ContentType = "application/pdf";
Response.WriteFile(physicalPathToFile);
Response.End();
修改强>
如果您想让用户能够下载pdf,您可以在Response.End之前添加以下行:
Response.AddHeader("content-disposition", "attachment; filename=" + filename);
其中filename可以是物理文件的非模糊名称(或您想要的任何名称)。
答案 1 :(得分:1)
D.的帖子100%正确,您可以更进一步,并使用.resources扩展名保存文件,因此IIS永远不会直接提供filE。