JavaScript本地文件夹访问

时间:2019-09-03 06:47:46

标签: javascript

我正在为Web应用程序寻找类似如下的功能,

用户选择具有高分辨率图像的本地文件夹。 调整图像大小并发送到服务器进行处理。

在本地文件系统中创建文件夹,并根据服务器响应复制原始的高分辨率图像

我们可以不使用任何本地安装的应用程序而仅使用Web应用程序来实现此目的吗?请指导我,我可以开始使用哪种方法/技术。

2 个答案:

答案 0 :(得分:0)

出于安全原因,浏览器不允许访问本地文件系统。为任何可以播放本地文件的网站成像。浏览器提供了可以在其中运行js应用的沙箱。

您最好的选择是使用webstorage。但是,您那里的容量有限,用户无法直接访问它。不同的浏览器可能具有不同的实现方式。

答案 1 :(得分:0)

您可以使用node.js和Sharp或Imagemagick来实现。

正如其他人在浏览器中提到的,出于安全原因,Javascript无法访问本地文件系统。因此,您必须提供一个上传接口,以便首先将映像上传到节点服务器,然后可以将映像转换为缓冲区/数据流,以调整缓冲区的大小,然后再次将其保存在准备下载的服务器上。

NodeJs是Javascript运行时 https://nodejs.org/en/

Express是一个应用程序框架,您可以构建可以执行JavaScript的网络服务器 https://expressjs.com/

(您已经说过不愿意,但是)您可以使用电子将其构建为节点桌面应用程序,该电子程序可以访问文件系统,但是它将是一个自包含的应用程序,而不是浏览器应用程序。 https://electronjs.org/

Sharp和imagemagick插件是最流行的基于nodejs的图像处理器

https://www.npmjs.com/package/sharp

https://www.npmjs.com/package/imagemagick

希望这可以帮助您入门