Merge pull request #32 from royvandewater/royvandewater/io-copy-error

Handle error on io copy in forward
This commit is contained in:
Alexander Klizhentas
2016-02-29 14:08:31 -08:00
+8 -1
View File
@@ -113,7 +113,14 @@ func (f *Forwarder) ServeHTTP(w http.ResponseWriter, req *http.Request) {
utils.CopyHeaders(w.Header(), response.Header)
w.WriteHeader(response.StatusCode)
written, _ := io.Copy(w, response.Body)
written, err := io.Copy(w, response.Body)
if err != nil {
f.log.Errorf("Error copying upstream response Body: %v", err.Error())
f.errHandler.ServeHTTP(w, req, err)
return
}
if written != 0 {
w.Header().Set(ContentLength, strconv.FormatInt(written, 10))
}