1
Fork 0
mirror of https://github.com/caddyserver/caddy.git synced 2024-12-16 21:56:40 -05:00

set content-length when body is fully buffered

This commit is contained in:
WeidiDeng 2024-10-17 09:09:26 +08:00
parent c6f2979986
commit 8c11e51747
No known key found for this signature in database
GPG key ID: 25F87CE1741EC7CD

View file

@ -625,7 +625,8 @@ func (h Handler) prepareRequest(req *http.Request, repl *caddy.Replacer) (*http.
if h.RequestBuffers != 0 && req.Body != nil { if h.RequestBuffers != 0 && req.Body != nil {
var readBytes int64 var readBytes int64
req.Body, readBytes = h.bufferedBody(req.Body, h.RequestBuffers) req.Body, readBytes = h.bufferedBody(req.Body, h.RequestBuffers)
if h.RequestBuffers == -1 { // set Content-Length when body is fully buffered
if b, ok := req.Body.(bodyReadCloser); ok && b.body == nil {
req.ContentLength = readBytes req.ContentLength = readBytes
req.Header.Set("Content-Length", strconv.FormatInt(req.ContentLength, 10)) req.Header.Set("Content-Length", strconv.FormatInt(req.ContentLength, 10))
} }