El usuario obtiene el contenido deseado inmediatamente
Los cambios se reflejan inmediatamente
Actualizaciones optimistas
Fallback en caso de errores
Velocidad de carga percibida
Mejora progresiva
Servidor
Cliente
Petición HTTP
Navegador
Node.js
Cómo implementarlo
Consulta
API
import React from 'react';
import { renderToString } from 'react-dom/server';
import http from 'http';
import App from './App.jsx';
const server = http.createServer(async (request, response) => {
// obtenemos los datos
const data = await getData();
// renderizamos React a HTML
const html = renderToString(
<App {...data} />
);
// enviamos la respuesta
response.write(html);
response.end();
});
server.listen(process.env.PORT);