Sponsor
ntab.devntab.dev 提升效率的新标签页组件
点击查看
Menu

服务端渲染(SSR)

也被称为"SSR"或"动态渲染"。

如果一个页面使用服务端渲染,页面 HTML 将在每次请求时生成。

要为页面使用服务端渲染,你需要导出一个名为 getServerSideProps 的异步函数。这个函数将在每次请求时被服务器调用。

例如,假设你的页面需要预渲染频繁更新的数据(从外部 API 获取)。你可以编写 getServerSideProps 来获取这些数据并将其传递给 Page,如下所示:

export default function Page({ data }) {
  // 渲染数据...
}
 
// 这在每次请求时都会被调用
export async function getServerSideProps() {
  // 从外部 API 获取数据
  const res = await fetch(`https://.../data`)
  const data = await res.json()
 
  // 通过 props 将数据传递给页面
  return { props: { data } }
}

如你所见,getServerSideProps 类似于 getStaticProps,但不同之处在于 getServerSideProps 在每次请求时运行,而不是在构建时。

要了解有关 getServerSideProps 工作原理的更多信息,请查看我们的数据获取文档