Handling client connection loss when streaming
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 38/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- scala
- Ambito
- networking
Direzione di ricerca
Inizia dalla configurazione di BlazeClientBuilder e dal percorso client.stream(...).body.through(ServerSentEvent.decoder); verifica come viene segnalata la perdita di connessione quando lo stream è inattivo e i timeout delle richieste non sono definiti. Il lavoro è completato quando lo stream termina in caso di perdita di connessione, oppure quando vengono documentati l’uso previsto e l’approccio supportato per la cancellazione o il timeout.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I'm trying to use a Server-Sent-Event endpoint. This is like a unidirectional web-socket where only the server can send data to the client. As there can be longer periods of time where no data is being sent by the server I'm disabling the idle and request timeouts:
BlazeClientBuilder[IO](ec)
.withIdleTimeout(Duration.Undefined)
.withRequestTimeout(Duration.Undefined)
.resource
.use { client =>
client.stream(r).flatMap(_.body.through(ServerSentEvent.decoder))
}
It works fine but this code does not handle connection loss of the client (it just keeps running as if nothing has happened). I would expect that the stream terminates when the client loses the connection to the server. Is this a bug or am I using it in the wrong way?
- Lingua principale
- Scala
- Stelle
- 371
- Fork
- 63
- Merge medio
- 1g 18h
- PR unite (30g)
- 8
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di http4s/blaze
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
http4s/blaze#918 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
http4s/blaze#894 · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 30/100
I maintainer di solito rispondono entro 1 giorno
-
support
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
http4s/blaze#774 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di http4s/blaze
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
com-lihaoyi/mill#7776 ·
I maintainer di solito rispondono entro 1 giorno
-
Module: Form Builder
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
orbeon/orbeon-forms#7943 ·
I maintainer di solito rispondono entro 2 giorni
-
module: core
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
bigbluebutton/bigbluebutton#26028 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
lambdaworks/zio-elasticsearch#869 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
bazel-contrib/rules_scala#2018 ·
I maintainer di solito rispondono entro 2 giorni