Web applications 如何在没有web服务器的情况下制作基于浏览器的应用程序?

Web applications 如何在没有web服务器的情况下制作基于浏览器的应用程序?,web-applications,Web Applications,我们的团队与一家公司签订了合同,该公司出于安全原因设置了一些限制。我们在他们的办公室工作,我们的计算机(由该公司提供)在工作时受到他们的网络安全系统的监控,互联网也受到严密监控。此外,excel、word、pdf、文本和许多其他文件都是加密的 我们共享一个Excel文件以跟踪我们正在进行的工作。该excel文件存储在一个文件夹中,该文件夹位于该公司特别授予我们访问权限的服务器中 我们可以共享任何文件或数据的唯一管道是通过网络上只有我们才能访问的特定文件夹 我的目标是制作一个基于浏览器的应用程序,

我们的团队与一家公司签订了合同,该公司出于安全原因设置了一些限制。我们在他们的办公室工作,我们的计算机(由该公司提供)在工作时受到他们的网络安全系统的监控,互联网也受到严密监控。此外,excel、word、pdf、文本和许多其他文件都是加密的

我们共享一个Excel文件以跟踪我们正在进行的工作。该excel文件存储在一个文件夹中,该文件夹位于该公司特别授予我们访问权限的服务器中

我们可以共享任何文件或数据的唯一管道是通过网络上只有我们才能访问的特定文件夹

我的目标是制作一个基于浏览器的应用程序,模仿excel文件上的操作,但该应用程序的限制条件是,它不能是通过Internet发送数据并存储在外部的外部web应用程序,我们也不能将自己的任何物理计算机作为服务器,而且他们不能为我们提供一台本地机器来服务web应用程序

我的问题是,是否可以制作一个独立的基于浏览器的应用程序,它可以在没有服务器的情况下运行,并且仍然能够将数据存储在许多人可以同时访问的[nosql、sqlite、文本文件、json等]中?如果是,通常推荐哪些工具用于此目的


我非常感谢你的帮助,谢谢

我想如果你想做到这一点,那么你需要开始学习你的政治技巧,让他们看到一个真正的服务器的价值,这将帮助所有相关人员。您可以构建它,使其仅限于内部。

这是一个我知道的老问题,但我发现这个问题非常有趣。所以我想提出一些我认为可行的解决方案

编写html和javascript来完成您想做的事情。将它们放在共享文件夹中(您不需要Web服务器,只需在浏览器中打开html文件即可)

因此,问题变成了存储数据

在这一点上,我认为有三种可能的解决办法。 1.例如,使用基于js文件的数据库taffyDB。我不知道taffy如何处理多个连接,因为我从未使用过它。但如果它奏效,那么这是一个很好的选择

  • 如果这是不可能的,请使用javaloader加载一个小java类(制作一个jar并将其放入文件夹中),该类可以从javascript中获取rest调用,并将信息存储到derby中。(看起来derby可能支持这一点,但在没有集中式服务器的多连接环境中支持这一点可能很棘手

  • 第三个粗略的想法是实际使用一个文件,然后只写数据。如果您依赖于希望存储某些内容的客户机锁定了该文件这一事实,那么这将是可行的。不过,您必须对存储过程有一点了解,可能是这样的

    • 呼叫商店
    • 尝试锁定文件(等待解锁)
    • 从文件重新加载数据
    • 确保不会覆盖自上次加载后可能存储的数据
    • 如果覆盖,则提示用户验证覆盖是否正常,或要求进行修改
    • 商店
    • 发布文件

  • 虽然这个问题很久以前就被提出了,现在也感觉到了它的相关性,但下面是作为创建渐进式Web应用程序(PWA)开发的一部分,现在可用的解决方案选项

    离线能力或离线第一思维是PWA的一个重要特征,PWA引入离线能力的方式是使用

    • 应用程序缓存/服务工作者,用于在用户脱机时管理应用程序
    • 对于存储数据,您可以使用缓存API、IndexedDB API、Web存储API。这里有一个很有前途的API,它包装了IndexedDB、WebSQL或localStorage,这使得它也与传统浏览器兼容

    解决这个问题的另一种方法是使用免费的开源解决方案,该解决方案使用JavaScript编写的CouchDB和Node.js。

    完全同意正确的答案是提供一个商业案例来证明您需要什么,这是一个web服务器/db,只在面向内部的IP上侦听。特别是作为上下文ems异常严格。不过,为了好玩,我建议使用一个可以读取网络文件系统的电子应用程序。毕竟,Visual Studio代码只是某种web应用程序:)

    对于仍然感兴趣的人:我的建议是安装Docker engine。 先决条件是1。访问docker.io或dockehub的internet和 docker注册表

    从apache构建docker映像和/或从docker.io构建node.js基本映像。 基本上,将其作为一个容器运行,其中包含您的custome web应用程序。
    瞧,您的桌面上有一个web服务器。

    理论上,可以使用WebRTC创建,尽管WebRTC通常使用信令服务器连接客户端。这对于在没有Internet连接的同一台计算机上运行可能很有用。

    仅使用HTML和JavaScript,浏览器无法简单地连接到其他浏览器。因此,您无法在计算机或服务器上加载web应用程序。如果我理解正确的话。你会把它放在哪里。你已经说过你不能进入外面。如果这一切都是真的,我会说不。谢谢你们的评论。我只是想知道这是否可行@约书亚·威尔逊:这个应用程序将通过局域网存储在一个文件服务器中。@ji你需要像tomcat或jboss这样的web服务器。如果你可以安装其中任何一个,那么你就可以让它工作。@JoshuaWilson我认为这样的事情是不可能的,除非计算机有像apache或nginx这样的HTTP服务器。不幸的是,即使承载excel文件的计算机有任何http服务器,它们也不允许我们使用它为任何web应用程序提供服务。是的,它看到了