Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Event on client disconnect/abort in a streaming response

Aberta
#145 1 comentário 6 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
42/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Pouca atividade
Stack de tecnologia
aws, node.js, typescript

Direção de pesquisa

Comece no ponto de entrada awslambda.streamifyResponse e inspecione o ciclo de vida de responseStream, especialmente a tentativa de adicionar um listener de close mostrada na issue. Determine como um abort ou uma desconexão do cliente é representado e, em seguida, verifique se um evento é emitido durante o loop de streaming e se seu comportamento é coberto por um teste apropriado.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Im wondering if its possible to get any event emitted when a client aborts or disconnects during a streaming response with awslambda.streamifyResponse. I tried with this code, but from my testing it looks like theres no event emitted on the Lambda when that happens:

exports.handler = awslambda.streamifyResponse(
    async (event, responseStream, context) => {
        responseStream.setContentType('text/event-stream')
        responseStream.on("close", ()=> {
          // this never gets emitted at any point
          console.log("responseStream closed");
        });
        for (let i = 0; i < 20; i++) {
            await sleep(1000);
            responseStream.write(`event: ping\n`);
            responseStream.write(`data: ${i}\n\n`);
        }
        responseStream.end();
    }
);

This would be an awesome feature to add in the age of SSR streaming, LLM's and more.

Linguagem predominante
TypeScript
Estrelas
224
Forks
60
Merge médio
26min
PRs com merge (30d)
2

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de aws/aws-lambda-nodejs-runtime-interface-client

Todas as issues de aws/aws-lambda-nodejs-runtime-interface-client

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.