0Pricing
Sveltejs Academy · Lekcja

Strumieniowanie z serwera za pomocą +server.js

Wysyłaj kolejne fragmenty z trasy API, używając ReadableStream.

Strumieniowanie z serwera za pomocą +server.js to bezpłatna lekcja Sveltejs Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Sveltejs Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Sveltejs Academy zawiera 4 lekcji w sumie.

Strumienie wysyłane przez serwer

W pliku +server.js zwróć Response opakowujący ReadableStream.

Podstawowy strumień

Zbuduj strumień, który z czasem emituje kolejne fragmenty danych.

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);
}

Typ zawartości

Ustaw odpowiedni typ zawartości: text/plain, text/event-stream, application/json (NDJSON) itd.

Przypadki użycia

Generowanie tekstu przez AI, dzienniki zdarzeń w czasie rzeczywistym, pobieranie dużych plików, stopniowe aktualizacje danych.

Kontrola przepływu

Strumień ogranicza tempo tworzenia danych, gdy odbiorca działa wolno, zapobiegając nadmiernemu zużyciu pamięci.

Odbieranie po stronie klienta

Po stronie klienta użyj response.body.getReader(), aby odczytywać strumień.

Zdarzenia wysyłane przez serwer

W przypadku jednokierunkowego przesyłania danych z serwera do klienta SSE sprawdza się doskonale. Koduj zdarzenia jako text/event-stream.

Alternatywa dla WebSockets

W przypadku komunikacji dwukierunkowej wybierz WebSockets za pośrednictwem osobnego serwera lub adaptera, który je obsługuje.

Anulowanie

Obsłuż anulowanie strumienia w funkcji start, aby zwolnić zasoby.

Obsługa przez adaptery

Większość adapterów obsługuje streaming. Sprawdź dokumentację używanego adaptera, aby poznać przypadki brzegowe.

Wydajność

Streaming skraca TTFB i pozwala klientom wcześniej przetwarzać częściowe dane.

Szybkie sprawdzenie

Jakiej klasy strumienia używa się w +server.js?

Podsumowanie

Użyj ReadableStream w +server.js, aby uzyskać porcjowane odpowiedzi serwera o małych opóźnieniach.

Często zadawane pytania

Czy lekcja „Strumieniowanie z serwera za pomocą +server.js” jest bezpłatna?

Tak — pełny tekst „Strumieniowanie z serwera za pomocą +server.js” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Sveltejs Academy, przejdź na CoddyKit PRO. Kurs Sveltejs Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Strumieniowanie z serwera za pomocą +server.js”?

Wysyłaj kolejne fragmenty z trasy API, używając ReadableStream. Ćwiczysz Sveltejs Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Sveltejs Academy?

Nie wymagamy żadnego doświadczenia. Sveltejs Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Strumieniowanie z serwera za pomocą +server.js”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Sveltejs Academy?

Tak. Każda lekcja Sveltejs Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Strumieniowanie danych za pomocą Promise w load
  2. Odroczone ładowanie i interfejs podobny do Suspense
  3. Strumieniowanie z serwera za pomocą +server.js
  4. Progresywna hydracja
← Powrót do Sveltejs Academy