我正在寻找一种方法来采用简单的HTML4,CSS和jQuery / Javascript编程的现有Web应用程序,并将其部署为不需要访问Internet并访问本地或Intranet数据库的桌面应用程序。有没有一个解决方案可以做到这一点,而无需在桌面目标编程语言中重新编程整个事情?我看过很多其他类似的stackoverflow帖子,但它们似乎都过时或略有不同(例如他们建议谷歌齿轮)。是否有目前最好的解决方案来做到这一点?
编辑:我说没有重新编程。我应该措辞,尽可能少的重新编程。另外,我并不害怕在网站上进行其他编程,例如带有嵌入式浏览器的应用程序。
答案 0 :(得分:2)
一年后,我找到了PHP桌面(https://code.google.com/p/phpdesktop/)。我不能推荐它。它是一个免费的开源项目,它将轻量级Mongoose服务器,PHP解释器和Chromium Embedded Framework嵌入到单个exe中。如果您不是PHP粉丝,还可以使用其他变体,例如Python。
您所做的就是将您的Web根文件夹放在与exe文件相同的文件夹中,然后运行exe。 Blammo!您的网络应用的外观和行为与桌面应用完全相同。它的设置非常简单。通过更改exe名称和图标以及编辑settings.json文件,还可以进行大量自定义。你真的无法区分你的网络应用程序和桌面应用程序。我们计划将文件夹打包成安装程序并将其作为桌面应用程序出售,我认为没有人会意识到他们正在运行Web应用程序。
答案 1 :(得分:0)
实际上,如果没有任何其他网站的链接,那么有人可以直接从他的浏览器在localweb中运行它,而无需任何互联网连接。
您的浏览器是html和javascript的解释器,因此,您只需将所有内容放入文件夹并启动基本html页面即可。
如果您希望在不启动浏览器的情况下将其设置为桌面应用程序,则可能会变得复杂。一切都取决于你的应用程序的制作方式。
答案 2 :(得分:0)
为什么呢?如果要访问Intranet数据库,则可以访问内部Web服务器。如果是这种情况,那么将其保留为不会上网的网络应用程序。可能有数百万个以这种方式运行的网络应用程序。想想这个问题。没有重新编程就没有办法做到这一点。目标平台和根本不同的范例。 HTML和CSS以及jQuery / JavaScript旨在在浏览器中运行。桌面应用程序没有这样的约束。如果它是一个简单的应用程序,可以归结为您的基本数据库CRUD应用程序,那么只需咬紧牙关并将其敲掉。您可以从jQuery / JavaScript中挽救大部分逻辑,因为这是动作发生的地方,但UI需要大量改造。您应该检查业务需求,并为需求构建正确的应用程序。如果你必须重写代码来做到这一点,那么,这就是你赚大钱的原因。 ;-)总而言之,首先回答,目前没有最好的方法。大多数商店只会针对多个平台构建。二,不。可能会有一些古老或神秘的巫术来做这件事,但我不知道,我相信它不会很漂亮。第三个问题重申第一个问题。你没有重新编程条款就使自己陷入瘫痪。我们为什么要从事这个行业?要编码!!!如果想要重新发明轮子的力量,微笑并为它们收费。