Sveltejs Academy · Lección

Transmisión desde el servidor con +server.js

Emita fragmentos progresivamente desde una ruta de API usando un ReadableStream.

Lección 3 de 413 pasos

Transmisión desde el servidor con +server.js es una lección gratuita de Sveltejs Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Sveltejs Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Sveltejs Academy incluye 4 lecciones en total.

Streams enviados por el servidor

Dentro de +server.js, devuelva una Response que envuelva un ReadableStream.

Stream básico

Construya un stream que emita fragmentos a lo largo del tiempo.

export function GET() {
  const stream = new ReadableStream({
    async start(controller) {
      for (const chunk of source) {
        controller.enqueue(new TextEncoder().encode(chunk));
      }
      controller.close();
    }
  });
  return new Response(stream);
}

Tipo de contenido

Establezca el tipo de contenido adecuado: text/plain, text/event-stream, application/json (NDJSON), etc.

Casos de uso

Generación de texto mediante IA, registros en tiempo real, descargas de archivos grandes y actualizaciones progresivas de datos.

Contrapresión

El stream ralentiza la producción cuando el consumidor es lento, lo que evita un crecimiento excesivo de la memoria.

Consumo en el cliente

Use response.body.getReader() en el cliente para leer el stream.

Eventos enviados por el servidor

Para un envío unidireccional del servidor al cliente, SSE es una excelente opción. Codifique los eventos como text/event-stream.

Alternativa: WebSockets

Para una comunicación bidireccional, elija WebSockets mediante un servidor independiente o un adaptador que los admita.

Cancelación

Gestione la cancelación del stream en la función start para liberar recursos.

Compatibilidad del adaptador

La mayoría de los adaptadores admiten streaming; consulte la documentación de su adaptador para conocer los casos especiales.

Rendimiento

El streaming reduce el TTFB y permite que los clientes procesen antes los datos parciales.

Comprobación rápida

¿Qué clase de stream utiliza en +server.js?

Recapitulación

Utilice ReadableStream en +server.js para obtener respuestas del servidor fragmentadas y con baja latencia.

Gratis para empezar

Aprende HTML con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
41
Lecciones
163

Preguntas frecuentes

¿La lección «Transmisión desde el servidor con +server.js» es gratis?

Sí — el texto completo de «Transmisión desde el servidor con +server.js» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Sveltejs Academy, actualiza a CoddyKit PRO. El curso de Sveltejs Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Transmisión desde el servidor con +server.js»?

Emita fragmentos progresivamente desde una ruta de API usando un ReadableStream. Practicas Sveltejs Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Sveltejs Academy?

No se requiere experiencia previa. Sveltejs Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Transmisión desde el servidor con +server.js»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Sveltejs Academy?

Sí. Cada lección de Sveltejs Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Transmisión de datos con promesas en load
  2. Carga diferida y UX similar a Suspense
  3. Transmisión desde el servidor con +server.js
  4. Hidratación progresiva
← Volver a Sveltejs Academy