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

Event on client disconnect/abort in a streaming response

Open
#145 1 comment 6 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
224
Forks
60
PR merge metrics
No merged PRs in 30d

Description

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:
```ts
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.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.