1

我正在尝试创建一个 aspx 页面,我可以在其中直接将文件从客户端上传到服务器,而无需用户干预。我想做一些事情,比如当用户在 url 中指定文件路径时,必须将该特定文件上传到服务器。

例如:ht.tp://XXX.XXX.XXX.XXX/File_upload/File_Uploader.aspx?upload=C:/sample.csv&type=csv

用户可以在上传后更改值以及他指定的任何文件,都需要将其上传到位于 xxx.xxx.xxx.xxx 的服务器上

这只是一个试验,检查是否在服务器上创建了 csv 文件,并且它没有被创建。

我只想将客户端上的文件复制到服务器端,并且它只能通过上面指定格式的 aspx 页面。如果还有其他好的方法,请指导我。谢谢。

4

2 回答 2

3

没有用户交互的情况下无法上传文件。他必须做一个明确的动作:拖放或选择一个带有对话窗口的文件。

这是因为安全原因,想象一下如果一个 HTML 页面可以将它想要的任何文件上传到远程服务器,而无需用户选择哪个文件:它可以上传用户文档、设置、密码或运行的 Windows 用户可以访问的任何内容浏览器。出于同样的原因,即使该value属性也经常被忽略,并且并非每个浏览器也都处理该accept属性(您可能或多或少地强制用户在他继续之前选择您想要的文件)。我记得旧版本的 Firefox 甚至不允许以编程方式单击input标签来上传文件。

于 2012-05-14T07:05:52.033 回答
0

您应该发布文件的内容。

这就是浏览器在使用文件上传对话框时所做的事情。浏览器打开文件并通过 HTTP 发送内容。

例如,您可以使用wget --post-file=file.txt. 在服务器上,您可以读取 POST 数据以检索文件的内容。

于 2012-05-14T07:11:18.517 回答