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)
}- ✓Poprawna odpowiedź: Zwrócić
Response, którego treścią jestReadableStream - 2Wywoływać
res.write()jak w Expressie - 3Streaming działa tylko na Edge runtime
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.