繁体   English   中英

是否可以仅在客户端“上传”文件? (不涉及服务器)

[英]Is it possible to “upload” a file only with client side ? (no server involved)

我想做一件简单的事情:

让用户选择一个txt文件,并保存其上下文仅用于客户端。 不需要服务器端。

可能吗 ?

谢谢。

不能.JavaScript无法访问本地文件系统。

但是,您可以在计算机上安装Web服务器,例如在该计算机上运行PHP。 然后,您可以在不通过网络连接发送数据的情况下执行此操作。 这需要你在PHP中进行数据处理,但可能不是你想要的。 或者您可以简单地将数据发送回您的javascript ..但是,为了使数据可用于JavaScript,运行上传非常糟糕。

成功实现这一目标的唯一方法是构建一个ActiveX类型的插件/组件(或Java applet),您将对客户端计算机有更多的控制权。

如果托管您的javascript的html页面来自远程服务器。 不信任此脚本在本地文件系统上执行操作。

<模糊解决方案模式级别= 1>

您可以为页面提供更多信任,但这是您的用户必须执行的操作。 如果这是仅在企业内使用的app / web,您可以集中进行此操作。 每个浏览器都以不同方式处理。 因此,当您没有有限的用户群时,这不是您可以依赖的东西。

<模糊解决方案模式级别=高>

如果您的(企业)用户使用的是Internet Explorer,您还可以创建一个HTML应用程序 (只需为您的html页面添加一个hta扩展名)。 这些页面具有完全信任,但只能从受信任位置启动,或者需要用户确认。

我猜你的意思是“保存其内容”并得出结论,你想在客户端对这些内容做任何事情,例如提取一些部分来填写表格。 无论如何,保存整个文件不变,在它来自同一台机器上,没有意义。 所以问题不在于如何上传,而是如何打开/读取文件。 你可以用Java Applet,Flash,Silverlight,ActiveX来做到这一点......仅举几例。 JavaScript不是一个选项。 它无法访问文件系统。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM