代码之家  ›  专栏  ›  技术社区  ›  SCdF

有没有人开发出可以完全离线运行的网络应用程序?[闭门]

  •  11
  • SCdF  · 技术社区  · 18 年前

    我正在开发一个应用程序,希望作者能用它来帮助他们。。 东西。

    当然不一定要这样,没有与其他网站的集成,没有社交功能。然而,它需要将信息输入表单,因此对于快速构建来说,web可能是最好的。

    然而,我真的不想亲自主持。我买不起它,但主要是使用它的人可能不希望他们的数据存储在其他地方。这是关于他们所写内容的私人信息,我不希望他们相信我,因此我正在考虑将其打造成一款厚客户端应用程序。

    这就是问题所在,如何让一个主要关注表单数据输入的应用程序(yay web应用程序)对潜在用户(yay厚客户端应用程序)轻松可用,但也可以脱机使用,让他们知道自己完全控制着自己的数据(yay厚客户端应用程序)。

    1. 将它构建为一个厚客户端Java应用程序,并在网上运行一个小程序,人们可以在下载完整内容之前使用它。
    2. 将其构建为在线的Flex应用程序和离线的Air应用程序(基本上相同来源不同的构建脚本)。
    3. 完全地 在他们的电脑上。它根本不会触网。

    • 打包一个安装,其中包含一个小型Web服务器,上面有我的代码,可以运行。
    • 将数据库从mySQL重新映射到SQLite。
    • 创建一个运行服务器并将浏览器打开到正确位置的便利应用程序,可能使用类似 Prism 把broswer的事都藏起来了。

    你以前做过这样的事吗?

    如果是,, 你遇到了什么问题?

    还有别的解决办法我没想到吗? '

    (还有, Joyent Slingshot 这是关于另一个问题的建议,但它是RoR(我没有这方面的经验),我99%确定它不会在linux下运行,所以它不适合我。)

    17 回复  |  直到 18 年前
        1
  •  6
  •   camh    18 年前

    我想你应该看看 tiddlywiki 寻求灵感。

    它是一个用JavaScript编写的wiki,完全包含在一个html文件中。您可以将其作为文件:///URL加载到浏览器中,因此不需要服务器。

        2
  •  5
  •   SCdF    18 年前

    Google Gears 用于离线提供一些谷歌应用程序(谷歌阅读器、Gmail、文档等)。

    什么是谷歌齿轮?

    Gears是一个开源浏览器扩展,允许开发人员创建 Gears提供三个关键功能:

    • 本地服务器,用于缓存和服务应用程序资源(HTML、, 需要联系服务器吗
    • 数据库,用于在浏览器中存储和访问数据
    • 工作线程池,使web应用程序更加 反应敏捷的

    背景

    如果您是一名对在应用程序中使用Gears感兴趣的开发人员,请访问 Gears Developer Page .

    如果希望在计算机上安装Gears,请访问Gears主页。但是,请注意,齿轮尚未用于一般用途。

        3
  •  4
  •   olliej    18 年前

    还有一个附加选项,即使用新的HTML5脱机应用程序功能,即应用程序缓存、客户端数据库和本地存储API。

    目前,我相信Safari是唯一一款支持这些功能的浏览器,而且我相信它只支持客户端数据库和本地存储部件。这个 webkit nightlies 支持所有这些功能,firefox夜生活支持其中的许多功能(也许现在都支持?)

    [编辑(olliej):更正,Firefox3支持应用程序缓存,但不支持客户端数据库]

        4
  •  2
  •   Corey    18 年前

    我们正在使用类似于您的第三个选项的东西在本地测试我们的网站。很好用。

    我们打包的Web服务器不够小,无法满足您的需要,但我们也没有试图保持它的小型化。如果你能将你的Web服务器代码打包成一个足够小的包,我不明白为什么这种方法不起作用。

        5
  •  2
  •   James Lloyd James Lloyd    18 年前

    我认为空气是最好的选择。。

        6
  •  1
  •   Daren Thomas    18 年前
        7
  •  1
  •   elhoim    17 年前

    • ExtJS 看起来真不错。

    • 对于存储部分,有一个很好的javascript库,用于抽象不同的存储后端: PersistJS .

    PersistJS支持的后端:

    1. 闪存:闪存8持久存储。
    2. gears:基于Google gears的持久存储。
    3. 本地存储:HTML5草稿存储。
    4. whatwg_db:HTML5草稿数据库存储。
    5. ie:Internet Explorer用户数据行为。
    6. cookie:基于cookie的持久存储。
        8
  •  0
  •   Daren Thomas    18 年前

    另外,我认为 moin moin wiki 软件具有 desktop version batteries are included

    你可能想看看他们是怎么做的?

        9
  •  0
  •   Robert Gould    18 年前

    或者您可以使用Java客户端应用程序来显示网页

    或者GoogleGears,但这和Flex+Air是一样的(几乎一样)。因此,如果您熟悉Flex+Air,请选择它

        10
  •  0
  •   crystalattice    18 年前

    您没有指定语言,但我查看了 Karigell

    从我对它的胡闹来看,它似乎适合你的目的。它有一个内置的web服务器(尽管您可以使用几乎任何您想要的服务器),并且您可以使用Python支持的任何数据库。

    另外,Python在Linux上运行良好。:)

        11
  •  0
  •   Luke Bennett    18 年前
        12
  •  0
  •   pilsetnieks    18 年前

    你可以在AdobeAIR中使用HTML、JS和其他任何东西,你也可以在本地保存数据。

        13
  •  0
  •   miceuz    18 年前

    在java世界中,您可以使用jetty作为服务器,使用您喜爱的框架实现web应用程序,并使用hsqldb作为数据库—它完全位于您的容器(jetty)中。您可以在web上部署预览应用程序,并打包可下载的脱机版本。

        14
  •  0
  •   Joeri Sebrechts    18 年前

    http://portableapps.com/apps/development/xampp

    这应该很容易适应您的需要。

        15
  •  0
  •   Brad Parks    18 年前

    你也可以考虑使用Xulror或棱镜。

    它们是FireFox、Thunderbird和Joost构建的开源技术,允许您使用XML和javascript开发应用程序,基本上与FireFox本身的丰富api相同。当然,这也是跨平台的,所以它可以在Mac/Linux/Windows上运行。。。

    查看此处了解更多信息: https://developer.mozilla.org/en/XULRunner

        16
  •  0
  •       18 年前

    另外,最好将其打包成一个包,这样未安装django的用户就可以运行应用程序,而无需任何依赖项。。。

        17
  •  -1
  •   Gravstar    18 年前

    正如你上面指出的,我的建议是使用Wiki系统来解决你的问题。现在的问题可能是:哪一个?

    你可以用 Trac ,它非常简单,您可以自定义它的GUI。但是,如果您喜欢更高级的,请使用 MoinMoin . 我使用它多年了,在我看来,它是一个非常好和强大的维基系统。