periodically ping client from server
This commit is contained in:
parent
76ea999c01
commit
23a348b4f7
1 changed files with 13 additions and 0 deletions
|
@ -224,6 +224,10 @@ func EventStreamSSE(c *gin.Context) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ping the client
|
||||||
|
io.WriteString(rw, ": ping\n\n")
|
||||||
|
flusher.Flush()
|
||||||
|
|
||||||
logrus.Debugf("user feed: connection opened")
|
logrus.Debugf("user feed: connection opened")
|
||||||
|
|
||||||
user := session.User(c)
|
user := session.User(c)
|
||||||
|
@ -269,6 +273,9 @@ func EventStreamSSE(c *gin.Context) {
|
||||||
return
|
return
|
||||||
case <-ctx.Done():
|
case <-ctx.Done():
|
||||||
return
|
return
|
||||||
|
case <-time.After(time.Second * 30):
|
||||||
|
io.WriteString(rw, ": ping\n\n")
|
||||||
|
flusher.Flush()
|
||||||
case buf, ok := <-eventc:
|
case buf, ok := <-eventc:
|
||||||
if ok {
|
if ok {
|
||||||
io.WriteString(rw, "data: ")
|
io.WriteString(rw, "data: ")
|
||||||
|
@ -294,6 +301,9 @@ func LogStreamSSE(c *gin.Context) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
io.WriteString(rw, ": ping\n\n")
|
||||||
|
flusher.Flush()
|
||||||
|
|
||||||
// repo := session.Repo(c)
|
// repo := session.Repo(c)
|
||||||
//
|
//
|
||||||
// // parse the build number and job sequence number from
|
// // parse the build number and job sequence number from
|
||||||
|
@ -388,6 +398,9 @@ func LogStreamSSE(c *gin.Context) {
|
||||||
return
|
return
|
||||||
case <-ctx.Done():
|
case <-ctx.Done():
|
||||||
return
|
return
|
||||||
|
case <-time.After(time.Second * 30):
|
||||||
|
io.WriteString(rw, ": ping\n\n")
|
||||||
|
flusher.Flush()
|
||||||
case buf, ok := <-logc:
|
case buf, ok := <-logc:
|
||||||
if ok {
|
if ok {
|
||||||
if id > last {
|
if id > last {
|
||||||
|
|
Loading…
Reference in a new issue