模糊链接网址

Chi*_*hin 3 .net

请原谅我的无知.我正朝着正确的方向寻找一点.

我有一个页面与一些(pdf)下载链接.如果我点击链接,pdf将在新页面中打开.我可以看到pdf驻留在服务器上的文件夹.如果我猜相同文件夹中的其他文件名,也许我会幸运的.有些文件是私有的,所以我不希望用户从网址获得提示.我怎么能模糊这个信息呢?我们在后端运行.net 2.我可以调用一个方法并让文件打开吗?

任何帮助赞赏.我不知道该搜索什么让我开始.

谢谢

我们有一个.Net 2后端.

Dav*_*und 12

您可以将每个PDF文件与数据库中的guid相关联,然后您可以创建一个页面DownloadPdf.aspx,并将其传递给guid以在文件系统上找到正确的文件,并呈现它:

Response.Clear();
Response.ContentType = "application/pdf";
Response.WriteFile(physicalPathToFile);
Response.End();
Run Code Online (Sandbox Code Playgroud)

编辑

如果您想让用户能够下载pdf,您可以在Response.End之前添加以下行:

Response.AddHeader("content-disposition", "attachment; filename=" + filename);
Run Code Online (Sandbox Code Playgroud)

其中filename可以是物理文件的非模糊名称(或您想要的任何名称).

  • 更好的是,将文件重命名为guid,并将原始文件名保留在数据库中.这样您就可以保证唯一的文件名,甚至可以进行基本的文件版本控制. (2认同)