diff --git a/src/server.ts b/src/server.ts index cde8dbd..731c80d 100644 --- a/src/server.ts +++ b/src/server.ts @@ -31,6 +31,15 @@ fastify.post('/run', { const { code, language } = req.body; const jobId = generateId(); const buffer = allocateBuffer(jobId, code, IMAGES.moshell); + reply.raw.writeHead(200, { + 'Content-Type': 'text/event-stream', + Connection: 'keep-alive', + 'Cache-Control': 'no-cache', + 'Access-Control-Allow-Origin': process.env.ALLOW_ORIGIN || '*', + }); + reply.raw.on('close', () => { + delete clients[jobId]; + }); sender.send(buffer).then(() => { reply.raw.write('event: connected\n'); reply.raw.write(`data: ${jobId}\n`);