javascript - 在 Node 环境中缓存 Contentful 内容

标签 javascript caching contentful

我是一名年轻的开发人员,我致力于开发一个内容存储在 Contentful 上的网站。目前,每次重新加载页面时,javascript 都会通过 API 检索 Contentful 上的内容。

网站的内容不太可能经常改变,所以我想缓存它。

该站点存储在 Netlify 上。 Link

所以我想我可以在 Node 构建上恢复 Contentful 上的内容,将其存储在“缓存”中,以便 javascript 在加载页面时使用。当在 Contentful 上修改时,webhook 会触发 Netlify 上的重建。

不知道我的想法对不对,谢谢大家的帮助和解答。

最佳答案

Contentful 实际上在其服务中内置了缓存,因此您无需执行任何操作即可在您的网站上获得缓存的好处。引自内容丰富的文档:

There are no limits enforced on requests that hit our CDN cache, i.e. the request doesn't count towards your rate limit and you can make an unlimited amount of cache hits. For requests that do hit the Contentful Delivery API enforces rate limits of 78 requests per second and 280800 requests per hour by default. Higher rate limits may apply depending on your current plan.

参见 https://www.contentful.com/developers/docs/references/content-delivery-api/#/introduction/api-rate-limits详细信息

如果您想对 Contentful API 进行额外的缓存,您可以使用一个 Node 库来为您完成。类似于 APICache在这个用例中会工作得很好。

如果在发布新内容时重建堆栈而不是在页面 View 中呈现它对您很重要,我建议您看看静态站点。 Contentful 有一些很棒的 webhook 支持,您可以将其与 Netlify 一起使用,以在作者推送新内容时帮助重建您的站点。查看有关使用 Gatsby 的本教程以了解更多详细信息 - https://www.contentful.com/blog/2018/02/28/contentful-gatsby-video-tutorials/

关于javascript - 在 Node 环境中缓存 Contentful 内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49719782/

相关文章:

graphql - 对 Gatsby 中的多个查询对 GraphQL 查询进行排序

javascript - 如果它有一个公共(public)键,如何求和 json 数组键的值

javascript - 在没有上下文或 Activity 的情况下创建 Android MessageBox?

android - HttpResponseCache 在 Android Lollipop 中不工作

java - 无法使用 Infinispan 服务器形成两个节点的集群

javascript - 以编程方式从 Contentful 数据创建 Gatsby 页面

javascript - 使用 ID 字符串作为 css 属性不起作用

javascript - 从 Servlet 获取 HTTP JSON 响应后如何更改 HTML 代码

c++ - 以编程方式清除 Linux 中已安装 (SSD) 磁盘上的缓存

javascript - 将内容更改同步到本地主机 gatsby 版本,无需重新运行 `gatsby-develop`