Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将目录中的文件转换为HTML元素_Javascript_Html_Node.js - Fatal编程技术网

Javascript 将目录中的文件转换为HTML元素

Javascript 将目录中的文件转换为HTML元素,javascript,html,node.js,Javascript,Html,Node.js,我需要能够从本地磁盘或网络驱动器上的给定目录中获取所有文件,并将它们转换为各自的HTML元素。所有这些都必须在客户端完成,但这些客户端是执行此任务的专用计算机(读取文件并在显示的网页中使用它们) 我一直在寻找Node.js作为解决方案,因此我可以使用文件系统fs从文件夹中读取文件,然后将文件(我可以通过这种方式将mp4s和PNG之类的文件传递给浏览器吗?)以运行javascript来构建加载这些文件的HTML。我之所以想到这一点,是因为我在其他帖子上看到,运行javascript的浏览器本身没有

我需要能够从本地磁盘或网络驱动器上的给定目录中获取所有文件,并将它们转换为各自的HTML元素。所有这些都必须在客户端完成,但这些客户端是执行此任务的专用计算机(读取文件并在显示的网页中使用它们)

我一直在寻找Node.js作为解决方案,因此我可以使用文件系统fs从文件夹中读取文件,然后将文件(我可以通过这种方式将mp4s和PNG之类的文件传递给浏览器吗?)以运行javascript来构建加载这些文件的HTML。我之所以想到这一点,是因为我在其他帖子上看到,运行javascript的浏览器本身没有权限或访问权限

我的问题是:
在所有这些机器上安装Node.js并读取文件后,浏览器是否可能(以及如何)不通过网络或端口/HTTP请求从Node获取信息

每个设备是否可以完全在本地完成此操作?
我看过Browserify,不确定这是否适合这个场景,所以任何验证都将不胜感激

提前谢谢

编辑:
场景的细节:浏览器需要在加载时从给定文件夹中的文件动态生成幻灯片。诸如PNG、mp4s,甚至iFrame中使用的浏览器链接都需要由节点或浏览器读取,并转换为元素以供幻灯片切换

浏览器是否可能(以及如何)不通过网络或端口/HTTP请求从节点获取信息

是的,有点

您可以跳过网络,但不能跳过HTTP请求,因为浏览器就是这样工作的

您可以使用node.js web服务器程序读取和服务磁盘上的本地文件,并将其内容以代理方式提供给HTTP请求。然后在这些计算机上安装node.js和该程序,并在本地端口上启动它。将浏览器指向
localhost:3000
,它将加载您的web应用程序,而无需连接到internet

请记住,节点完全在web浏览器之外运行。它可以完全访问文件系统来做任何你想做的事情,而出于安全考虑,浏览器永远不会允许这样做


作为完全替代浏览器的一种选择,您可以尝试使用更为健壮的解决方案。它会创建一个应用程序,你可以像其他应用程序一样在桌面操作系统上启动。它可以直接访问文件系统,并且可以在一个看起来根本不像web浏览器的窗口中呈现任何HTML和JS。您完全可以将其硬编码为在特定目录中查找,并在启动时以您喜欢的方式显示其中的任何内容

浏览器是否可能(以及如何)不通过网络或端口/HTTP请求从节点获取信息

是的,有点

您可以跳过网络,但不能跳过HTTP请求,因为浏览器就是这样工作的

您可以使用node.js web服务器程序读取和服务磁盘上的本地文件,并将其内容以代理方式提供给HTTP请求。然后在这些计算机上安装node.js和该程序,并在本地端口上启动它。将浏览器指向
localhost:3000
,它将加载您的web应用程序,而无需连接到internet

请记住,节点完全在web浏览器之外运行。它可以完全访问文件系统来做任何你想做的事情,而出于安全考虑,浏览器永远不会允许这样做



作为完全替代浏览器的一种选择,您可以尝试使用更为健壮的解决方案。它会创建一个应用程序,你可以像其他应用程序一样在桌面操作系统上启动。它可以直接访问文件系统,并且可以在一个看起来根本不像web浏览器的窗口中呈现任何HTML和JS。您完全可以将其硬编码为在特定目录中查找,并在启动时以您喜欢的方式显示其中的任何内容。

这一切的更高级别用例是什么?@charlietfl添加并编辑:)因此,您可以将节点作为本地主机服务器运行,并以与任何网站相同的方式构建所需内容。或者将所有内容打包到一个电子应用程序中,基本上就是服务器、浏览器、html和前端js,打包到一个桌面应用程序中,这正是我在electron中需要的。谢谢对于所有这些,更高级别的用例是什么?@charlietfl添加并编辑:),因此您可以将节点作为本地主机服务器运行,并以与任何网站相同的方式构建所需的内容。或者将所有内容打包到一个电子应用程序中,基本上就是服务器、浏览器、html和前端js,打包到一个桌面应用程序中,这正是我在electron中需要的。谢谢