如何在 github 上存储服务器端数据?

How do I store server-side data on github?

我正在使用 Github 页面来构建网站,但我不知道如何在服务器端存储数据。我可以使用 localStorage 和 sessionStorage,但它们是客户端的。有没有人有办法使用 javascript 或其他适用于 Github 的编程语言来存储数据?或者静态网站可以不存储数据吗?

我已经用谷歌搜索了 "server-side Github" 和 "javascript server-side" 并研究了其他编程语言,例如 PHP(不适用于 Github)

静态网站,例如使用 GitHub 页面创建的网站,只是静态资产;也就是说,它们是 HTML、JavaScript 和 CSS,除了基本的 Web 服务器之外没有任何后端(服务器端组件)。这样做的好处是它们可以 运行 在任何网络服务器上的任何地方,但正如您所注意到的,由于它们没有后端组件,因此它们有些受限。

GitHub Pages 旨在用于托管您的开源项目的网站,因此它不提供后端托管。如果你想要那样,你需要研究替代方案。

静态网站需要通过 API 与服务器通信以存储数据。您可以 运行 该服务器自己或使用第三方服务来完成。如果您刚刚开始制作新应用的原型,那么尽可能多地利用现有服务来验证您的产品是有意义的。

如果您一直在客户端使用 localStorage 并且想要类似的 API 将数据存储在服务器上,我建议您查看远程键值存储,例如 KVdb.io免责声明:我构建了它,但可以免费使用!)。

例如:

<script src="https://unpkg.com/kvdb.io@v1.0"></script>
<script>
const kvdbStorage = KVdb.bucket('MY_BUCKET_ID').localStorage()

kvdbStorage.setItem('my-key', 'my-value')
  .then(() => console.log('key saved')
  .then(() => kvdbStorage.getItem('my-key'))
  .then(value => console.log('get value', value))
  .catch(err => console.error(err)
</script>

如果您的数据可以建模为键值对,这种方法可以让您走得更远,而无需自己管理数据库。