使用“无后端”编写Web应用程序

11
有了新的服务,如 Firebase 和 Parse,以及工具,如 Angular JS,现在可以编写作为静态文件集合简单提供的 Web 应用程序。你可以使用纯 HTML/CSS/JavaScript 写前端代码,后端则是托管服务。
我的问题是:
  • 这是个好主意吗?
  • 像 Heroku 或 App Engine 这样的东西是否值得用于这样的应用程序?用户只需要下载一次 HTML/JS 就可以了。
  • 如何处理用户?联合登录?将用户数据存储在 Firebase/Parse 中?

欢迎任何其他建议!

1个回答

10
使用当前浏览器的功能编写仅客户端应用程序是完全合理的。我个人使用仅 Firebase 作为后端和从 CDN 提供的 HTML/JavaScript 作为客户端构建了一个复杂的应用程序。这特别适用于具有固有简单安全模型的应用类型:
- 单用户应用程序(数据属于并由一个人修改) - 聊天和通信小部件 - 对组织私有的应用程序,在这些应用程序中,客户端连接得到身份验证且至少被信任到某种程度(协作编辑器和 CRM)
在某些情况下是可能的,但不太适用于具有繁重计算工具的情况,其中甚至需要仔细控制低级用户数据的可信第三方(例如,玩家可以黑进自己的统计数据,并且计算有效统计数据需要复杂的算法)。
您还可以通过使用“特权消费者”替换传统的 API 和服务器脚本来大大减少服务器管理和设置。这些也是 Firebase 的侦听器,具有更高的访问权限,类似于客户端监听和处理数据,然后写入安全数据,普通用户不应被允许访问或操作。
仅客户端模型的缺点是安全性的增加复杂性。每个客户端都必须被信任来计算和存储自己的数据,或者该数据必须通过安全规则或某种外部监控(例如特权消费者)进行仔细保护。

通过研究"Fat Client"或者"Thick Client"设计模式的文献,您可能会发现一些有趣的设计思路。您也可以查看分布式游戏以获取一些见解。


你不是指的聊天软件Kato吧?😉 - CMCDragonkai

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接