Next.js · Middle · Pytanie 67 z 75

Jak zwracać odpowiedź z Route Handlera stopniowo (np. tokeny AI)?

export async function GET() {
  const stream = new ReadableStream({
    async start(controller) {
      for await (const chunk of tokens()) controller.enqueue(chunk)
      controller.close()
    },
  })
  return new Response(stream)
}

Wyjaśnienie

Route Handlery używają Web API Response, więc każdy strumień działa też na runtime Node.js. Dla SSE dodaj nagłówki text/event-stream.

Do poczytania

Błąd w pytaniu

Next.js · Middle · pytanie 67

Sprawdź się

Rozwiąż test Next.js · Middle: pytania i odpowiedzi są tasowane, a na końcu czeka przegląd błędów.

Rozwiąż ten test