假设有一个用户经常使用的网站(一个 JavaScript 应用程序),并且他们请求能够在该网站上保存其状态,以便他们可以从上次中断的地方继续。
该网站没有数据库后端,它只是一个单页 JavaScript 应用程序,具有相当复杂的状态,因此简单地生成 url 不是一个选项,因为状态可能有几千字节,因此对于 url 来说太大了。
Cookie 也不是一个选项,因为它的大小和我希望状态是可移植的,因此当用户保存它时,他也可以使用它在其他计算机上继续。
由于我不想使用数据库后端和身份验证使站点变得复杂,所以我认为站点的状态可以生成为文本,用户可以复制该文本,然后可以将此文本配置粘贴到可以从 javascript 解析的文本字段中恢复应用程序状态。
它可以工作,尽管这对用户来说有点麻烦(将文本配置存储在某处并稍后将其粘贴回来)。是否有其他选项可以在不添加数据库的情况下执行此操作? (例如,我考虑将文本配置(没有机密信息)保存到某个公共粘贴站点,尽管我不知道是否有一个具有支持匿名上传的 js api 的站点)。
还有其他选择吗?
根据您的评论,我认为 Firebase 可能是您的一个选择。它是一个数据库,但不在本地托管。您可以让客户端 JavaScript 直接访问它,而不会弄乱您自己的后端。
您可以查看
localStorage
并分别使用 JSON.parse()
和 JSON.stringify()
对其进行读取和写入。
编辑: 抱歉,刚刚注意到您说您希望它是便携式的。如果没有后端,这将变得非常困难,除非用户保留他的设置并在每次访问该网站时上传它们。
我使用来自 https://littledataapi.com 的 Web API 端点。它不是一个成熟的数据库系统,但对于我的小型项目来说非常好。