我有一个 ASP.NET Web 应用程序。在某个步骤中,我创建了一个文本文件并将其存储在服务器上的文件夹中。我在服务器代码上执行此操作。但是在完成创建文件之后,我想将该文件下载到客户端计算机。这甚至可能吗?我知道 John Culviner 的 jquery 文件下载插件。但在查看之后,我了解到要下载的文件必须位于网站本身所在的同一目录中 - 例如 www.mywebsite.com/downloads/text1.txt。但我想将创建的文件放入其他目录。我觉得 ftp 会在这里发挥作用,但不知道如何。你能指导我一点吗。
问问题
883 次
2 回答
1
您无法从 javascript 启动 FTP 会话,但您可以创建一个页面来下载此文件并发出正确的标题,让浏览器知道应该下载而不是显示该文件。然后在您的 javascript 中,只需将页面重定向到此下载 url 并下载文件,但不会更改页面视图,它只会触发浏览器中的下载对话框。
标题至少应包括附件的内容配置:
Response.AddHeader("content-disposition:", "attachment;filename=...")
于 2012-12-13T11:10:01.577 回答
1
您需要的是在后端代码中使用 Response.TransmitFile 方法而不是 javascript。
Dim FileLocation As String = "C:/File.csv"
Response.ContentType = "application/csv"
Response.AppendHeader("Content-Disposition", "attachment;filename=" + FileLocation )
Response.TransmitFile(FileLocation )
Response.End()
因此,一旦您创建了文件,只需使用该代码,您就会自动(它会询问他们是否愿意)在客户端计算机上开始下载该文件的文件。
于 2012-12-13T11:13:15.467 回答