fix chunked encoding API no response (#6157)
This commit is contained in:
@@ -420,7 +420,15 @@ func (c *ResponseCapture) Header() http.Header {
|
||||
func (c *ResponseCapture) Write(data []byte) (int, error) {
|
||||
c.WriteHeader(http.StatusOK)
|
||||
c.body.Write(data)
|
||||
return c.ResponseWriter.Write(data)
|
||||
|
||||
n, err := c.ResponseWriter.Write(data)
|
||||
if err != nil {
|
||||
return n, err
|
||||
}
|
||||
if flusher, ok := c.ResponseWriter.(http.Flusher); ok {
|
||||
flusher.Flush()
|
||||
}
|
||||
return n, nil
|
||||
}
|
||||
|
||||
func (c *ResponseCapture) WriteHeader(statusCode int) {
|
||||
|
||||
@@ -22,7 +22,6 @@ import (
|
||||
|
||||
type metaResponseWriter struct {
|
||||
http.ResponseWriter
|
||||
|
||||
statusCode int
|
||||
size int
|
||||
}
|
||||
@@ -39,10 +38,20 @@ func (r *metaResponseWriter) WriteHeader(code int) {
|
||||
r.ResponseWriter.WriteHeader(code)
|
||||
}
|
||||
|
||||
func (r *metaResponseWriter) Header() http.Header {
|
||||
return r.ResponseWriter.Header()
|
||||
}
|
||||
|
||||
func (r *metaResponseWriter) Write(b []byte) (int, error) {
|
||||
size, err := r.ResponseWriter.Write(b)
|
||||
r.size += size
|
||||
return size, err
|
||||
if err != nil {
|
||||
return size, err
|
||||
}
|
||||
if flusher, ok := r.ResponseWriter.(http.Flusher); ok {
|
||||
flusher.Flush()
|
||||
}
|
||||
return size, nil
|
||||
}
|
||||
|
||||
func (r *metaResponseWriter) Hijack() (net.Conn, *bufio.ReadWriter, error) {
|
||||
|
||||
Reference in New Issue
Block a user