c# - 有没有办法从Web服务器托管的Web应用程序访问客户端(用户)特殊文件夹

标签 c# client special-folders

我正在使用 MVC 开发一个 Web 应用程序,该应用程序托管在 Web 服务器中。每当用户访问应用程序时,它都必须从客户端计算机获取本地应用程序数据文件夹。

有没有可能的方法来实现上述场景?

我尝试过使用Environment.Specialfolder,但它给出的是Web服务器本地数据的路径,而不是客户端计算机的路径

C#:

string s = Environment.GetFolderPath(
            Environment.SpecialFolder.LocalApplicationData);

最佳答案

服务器端代码不能只访问客户端计算机上的文件。相反,此功能应使用客户端脚本来实现。

如果您需要让您的应用程序在用户计算机上保留一些数据或文件,然后读取该数据并将其发送到服务器(或在客户端上使用它),那么在现代浏览器中您有很多选择:

从用户计算机中获取任意文件是完全不同的情况,因为它具有安全隐患。您的选择是:

  • 输入 <input type="file"> 在页面上,让用户选择要上传到服务器的文件。
  • 使用HTML Drag & Drop让用户将文件拖到您的页面上
  • 开发一个附带的桌面应用程序,用户必须将其安装在自己的计算机上。
  • 您还可以探索开发浏览器扩展的可能性,不过据我所知,这将使您对用户文件系统的访问非常有限。今天的主要标准是 Web Extensions对于主流浏览器,以及 Browser Helper Objects对于 Internet Explorer。

关于c# - 有没有办法从Web服务器托管的Web应用程序访问客户端(用户)特殊文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56442124/

相关文章:

c# - 如何将数组中的所有内容向上移动一个位置? C#

java - 从应用程序客户端访问EJB(项目配置)

ios - iOS卸载应用时Environment.Special.LocalApplicationData会被删除吗?

java - 如何从 Java 获取 Windows 虚拟文件夹位置?

c# - 有没有一种方法可以将带有 count 的 for 循环变成递归循环?

c# - SqlDataAdapter 在设置批处理大小时给出参数名称无效错误

image - 使用 Jersey 客户端上传图像文件时服务器出现异常

.net - 为什么specialfolder.personal返回c :/user/xxx/Documents

c# - C# 列表和 ArgumentOutOfRangeException 的问题

android - 创建客户端套接字失败