如何使用Next.js应用程序在Vercel(前身为Zeit Now)中每小时调用一次npm运行构建



我的应用程序利用getStaticProps(SSG(函数(在构建时从api获取(。

我希望npm每小时运行一次构建,这样应用程序就可以从api中获取信息并保持最新。

欢迎提出任何建议。

在类似的情况下,增量静态再生对我来说效果非常好。只需将revalidate选项添加到getStaticProps返回对象中。

我不建议这样做。有比触发构建更好的解决方案。

它从API获取什么样的数据?如果你请求的数据是动态的(除了apon构建时(,那么我不明白你为什么要使用一个意外的功能。

也许通过对您的用例进行更多的解释,我们可以提出一个更好的方法?

我管理我的应用程序,使用Zeit Now的webhook每小时触发一次构建,并使用Zapier每小时调度一次POST请求。

请检查Paul的答案。我将添加更多信息:
  • 将SSR与缓存策略一起使用,例如无服务器预渲染
  • 使用SSG生成一个基本模板,然后使用API获取所需的数据。缓存策略在这里也是至关重要的:
module.exports = (req, res) => {
// fetch from external API
res.setHeader('Cache-Control', 's-maxage=3600, stale-while-revalidate')
}

最新更新