diff --git a/http3/request.go b/http3/request.go index 9af25a57..126d34f1 100644 --- a/http3/request.go +++ b/http3/request.go @@ -83,10 +83,12 @@ func requestFromHeaders(headers []qpack.HeaderField) (*http.Request, error) { var contentLength int64 if len(contentLengthStr) > 0 { - contentLength, err = strconv.ParseInt(contentLengthStr, 10, 64) + cl, err := strconv.ParseInt(contentLengthStr, 10, 64) if err != nil { return nil, err } + httpHeaders.Set("Content-Length", contentLengthStr) + contentLength = cl } return &http.Request{ diff --git a/http3/request_test.go b/http3/request_test.go index ce6262a7..edaef9df 100644 --- a/http3/request_test.go +++ b/http3/request_test.go @@ -26,7 +26,8 @@ var _ = Describe("Request", func() { Expect(req.ProtoMajor).To(Equal(3)) Expect(req.ProtoMinor).To(BeZero()) Expect(req.ContentLength).To(Equal(int64(42))) - Expect(req.Header).To(BeEmpty()) + Expect(req.Header).To(HaveLen(1)) + Expect(req.Header.Get("Content-Length")).To(Equal("42")) Expect(req.Body).To(BeNil()) Expect(req.Host).To(Equal("quic.clemente.io")) Expect(req.RequestURI).To(Equal("/foo"))