Header "connection: close" disconnects the client before Response Stream is started
#2.276 aberto em 10 de mar. de 2025
Métricas do repositório
- Stars
- (10.462 stars)
- Métricas de merge de PR
- (Mesclagem média 2d 2h) (7 fundiu PRs em 30d)
Description
Describe the bug
In our project we use Drogon for HTTP response streaming.
However, when client includes connection header that is not keep-alive, response stream is immediaitely closed.
It is common practice to use connection: close to indicate that connection should be closed after processing is finished*, meaning - after HTTP response stream is done.
In our setup, we needed to patch drogon like this: https://github.com/openvinotoolkit/model_server/pull/3113/commits/8ca2918c04ae9fab77ad157dcd23673971d84420
To Reproduce Steps to reproduce the behavior:
- Start drogon with streaming response endpoint defined
- Request with any client including header
connection: close - Request is immediately rejected
Expected behavior Connection is closed after response streaming is finished.
Desktop (please complete the following information):
- OS: ubuntu, redhat, windows
- Client: any
More context
We are using Continue VSCode plugin as a client for code completions: https://github.com/continuedev/continue
We use drogon to serve http streaming (code completions), however, this plugin (client) sends connection: close header.