0Pricing
Sveltejs Academy · Lezione

Streaming con ReadableStream

Trasmetta progressivamente risposte di grandi dimensioni utilizzando la Web Streams API in +server.js.

Streaming con ReadableStream è una lezione Sveltejs Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Sveltejs Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Sveltejs Academy include 4 lezioni in totale.

Perché usare lo streaming

Le risposte di grandi dimensioni possono essere inviate progressivamente, così il client inizia a ricevere i dati immediatamente.

API ReadableStream

Utilizzi la Web Streams API standard per creare una risposta in streaming.

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

Eventi inviati dal server

Trasmetta dati text/event-stream per gli aggiornamenti in tempo reale.

Trasferimento a blocchi

HTTP invia ogni blocco accodato attraverso la rete non appena è pronto.

Casi d'uso

Log in tempo reale, generazione di testo tramite IA, caricamenti e download di file, eventi di avanzamento.

Lato client

Utilizzi response.body.getReader() sul client per consumare lo stream.

Backpressure

Lo stream interrompe la produzione quando il consumer è lento. Eviti di bloccare il producer.

Chiusura

Chiami sempre controller.close() al termine. In caso di errore, chiami controller.error().

Adapter

Il supporto allo streaming varia a seconda dell'adapter. adapter-node funziona; alcuni runtime edge presentano limitazioni.

Prestazioni

Lo streaming migliora drasticamente il Time to First Byte e la velocità percepita.

Combinare con load

Lo streaming load di SvelteKit restituisce Promise che si risolvono nel tempo, in modo distinto dagli stream grezzi.

Verifica rapida

Qual è il principale vantaggio dello streaming?

Riepilogo

Avvolga un ReadableStream in una Response per trasmettere progressivamente i chunk da +server.js.

Domande Frequenti

La lezione «Streaming con ReadableStream» è gratuita?

Sì — il testo completo di «Streaming con ReadableStream» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Sveltejs Academy, passa a CoddyKit PRO. Il corso Sveltejs Academy include 4 lezioni in totale.

Cosa imparerò in «Streaming con ReadableStream»?

Trasmetta progressivamente risposte di grandi dimensioni utilizzando la Web Streams API in +server.js. Eserciti Sveltejs Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Sveltejs Academy?

Non è richiesta alcuna esperienza precedente. Sveltejs Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Streaming con ReadableStream»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Sveltejs Academy?

Sì. Ogni lezione Sveltejs Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. +server.js: GET POST PUT DELETE
  2. Request e RequestEvent
  3. Restituzione di risposte JSON
  4. Streaming con ReadableStream
← Torna a Sveltejs Academy