Files
2025-08-21 22:38:41 +08:00

18 lines
468 B
Python

import asyncio
import json
from starlette.responses import StreamingResponse
def add_custom_stream_api_route(app):
@app.get("/my_stream")
async def custom_stream(start: int, end: int):
async def generate_numbers():
current = start
while current <= end:
yield json.dumps({"number": current}) + "\n"
await asyncio.sleep(0.2)
current += 1
return StreamingResponse(generate_numbers(), media_type="application/x-ndjson")