使用"无后端"编写Web应用程序

ian*_*n93 10 web-applications angularjs parse-platform firebase

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

我的问题是:

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

欢迎任何其他建议!

Kat*_*ato 9

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

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

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

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

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

您可以通过深入研究"胖客户端"或"胖客户端"设计模式的文献,找到一些有趣的设计思路.您可能还想查看分布式游戏以获得一些见解.