【问题标题】:Writing a web app with "no backend" [closed]编写一个“无后端”的网络应用程序 [关闭]
【发布时间】:2013-05-26 08:26:22
【问题描述】:

借助 Firebase 和 Parse 等新服务以及 Angular JS 等工具,现在可以编写一个简单地作为静态文件集合提供服务的 Web 应用程序。你可以用钱包 HTML/CSS/Javascript 编写前端,后端是托管服务。

我的问题是:

  • 这是个好主意吗?
  • 对于这样的应用程序是否值得使用 Heroku 或 App Engine 之类的东西?用户真的只需要下载一次 HTML/JS 就可以了
  • 如何处理用户?联合登录?在 Firebase/Parse 中存储用户数据?

欢迎提出其他建议!

【问题讨论】:

    标签: web-applications angularjs parse-platform firebase


    【解决方案1】:

    使用当前浏览器功能编写仅客户端应用程序是完全合理的。我个人构建了一个复杂的应用程序,仅使用后端的 Firebase 和从 CDN 作为客户端提供的 HTML/JavaScript。这特别适用于具有固有简单安全模型的应用类型:

    • 单用户应用(数据属于一个人并由一个人修改)
    • 聊天和通讯小部件
    • 组织私有的应用程序,其中客户端连接至少在较小程度上经过身份验证和信任(协作编辑器和 CRM)

    在某些情况下是可能的,但不太适合计算繁重的工具,即使是低级别的用户数据也必须由受信任的第三方仔细控制(例如,玩家可以破解自己的统计数据并计算有效统计数据需要复杂算法的游戏)

    您还可以通过用“特权消费者”替换传统的 API 和服务器脚本来大大减少服务器管理和设置。这些也是 Firebase 的侦听器,具有更高的访问权限,它们像客户端一样侦听和处理数据,然后写入安全数据,而不应允许普通用户访问或操作。

    仅客户端模型的一个缺点是增加了安全性的复杂性。必须信任每个客户端来计算和存储自己的数据,或者必须通过安全规则或某种外部监控(例如特权消费者)仔细保护数据。

    通过深入研究"Fat Client" or "Thick Client" 设计模式的文献,您可能会发现一些有趣的设计理念。您可能还想查看distributed gaming 以获得一些见解。

    【讨论】:

    • 你指的不是聊天应用程序 Kato 吗? ;)
    猜你喜欢
    • 2011-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多