mirror of
https://github.com/yusing/godoxy.git
synced 2026-04-20 07:21:26 +02:00
fix(idlewatcher): improve container readiness handling in wakeFromHTTP
- Updated the wakeFromHTTP method to send a 100 Continue response to prevent client wait-header timeout. - Implemented logic for non-HTML requests to wait for the container to become ready, returning an error message if it times out, or redirecting if successful. - Adjusted the waitForReady method to return true upon receiving a ready notification.
This commit is contained in:
@@ -176,7 +176,14 @@ func (w *Watcher) wakeFromHTTP(rw http.ResponseWriter, r *http.Request) (shouldN
|
||||
}
|
||||
|
||||
if !acceptHTML {
|
||||
serveStaticContent(rw, http.StatusOK, "text/plain", []byte("Container woken"))
|
||||
// send a continue response to prevent client wait-header timeout
|
||||
rw.WriteHeader(http.StatusContinue)
|
||||
ready := w.waitForReady(r.Context())
|
||||
if !ready {
|
||||
serveStaticContent(rw, http.StatusInternalServerError, "text/plain", []byte("Timeout waiting for container to become ready"))
|
||||
} else {
|
||||
http.Redirect(rw, r, r.URL.Path, http.StatusSeeOther)
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user