JSONLines Example
JSONLines streaming with async generators .
Result
Code
JSONLinesController.ts
src/modules/jsonlines/JSONLinesController.ts
import { get, prefix, operation } from 'vovk';
type Token = { message: string };
@prefix('jsonlines')
export default class JSONLinesController {
@operation({
summary: 'Stream tokens',
description: 'Stream tokens to the client',
})
@get('tokens', { cors: true })
static async *streamTokens() {
const tokens: Token[] = [
{ message: 'Hello,' },
{ message: ' World' },
{ message: ' from' },
{ message: ' JSONLines' },
{ message: ' Endpoint' },
{ message: '!' },
];
for (const token of tokens) {
yield token;
await new Promise((resolve) => setTimeout(resolve, 300));
}
}
}
Related Documentation
Last updated on