Renderizado del lado del servidor (SSR)

También conocido como "SSR" o "Renderizado Dinámico".

Si una página utiliza Renderizado del lado del servidor (SSR), el HTML de la página se genera en cada solicitud.

Para usar SSR en una página, debes exportar una función async llamada getServerSideProps. Esta función será llamada por el servidor en cada solicitud.

Por ejemplo, supongamos que tu página necesita prerrenderizar datos que se actualizan frecuentemente (obtenidos desde una API externa). Puedes escribir getServerSideProps que obtenga estos datos y los pase a Page como se muestra a continuación:

export default function Page({ data }) {
  // Renderizar datos...
}

// Esto se ejecuta en cada solicitud
export async function getServerSideProps() {
  // Obtener datos de una API externa
  const res = await fetch(`https://.../data`)
  const data = await res.json()

  // Pasar datos a la página mediante props
  return { props: { data } }
}

Como puedes ver, getServerSideProps es similar a getStaticProps, pero la diferencia es que getServerSideProps se ejecuta en cada solicitud en lugar de durante el tiempo de compilación.

Para aprender más sobre cómo funciona getServerSideProps, consulta nuestra documentación de Obtención de Datos.