From 4130c3de326d5d83853dfa188ec1cea9526f4b65 Mon Sep 17 00:00:00 2001 From: Marten Seemann Date: Wed, 14 Dec 2016 22:33:09 +0700 Subject: [PATCH] send priority in H2 request headers MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit is required by Google’s QUIC implementation --- h2quic/request_writer.go | 1 + h2quic/request_writer_test.go | 1 + 2 files changed, 2 insertions(+) diff --git a/h2quic/request_writer.go b/h2quic/request_writer.go index d02c75dde..c77fcbd68 100644 --- a/h2quic/request_writer.go +++ b/h2quic/request_writer.go @@ -42,6 +42,7 @@ func (w *requestWriter) WriteRequest(req *http.Request, dataStreamID protocol.St StreamID: uint32(dataStreamID), EndHeaders: true, BlockFragment: w.hbuf.Bytes(), + Priority: http2.PriorityParam{Weight: 0xff}, }) } diff --git a/h2quic/request_writer_test.go b/h2quic/request_writer_test.go index d7da19665..39a2f240c 100644 --- a/h2quic/request_writer_test.go +++ b/h2quic/request_writer_test.go @@ -47,6 +47,7 @@ var _ = Describe("Request", func() { rw.WriteRequest(req, 1337) headerFrame, headerFields := decode(headerStream.Bytes()) Expect(headerFrame.StreamID).To(Equal(uint32(1337))) + Expect(headerFrame.HasPriority()).To(BeTrue()) Expect(headerFields).To(HaveKeyWithValue(":authority", "quic.clemente.io")) Expect(headerFields).To(HaveKeyWithValue(":method", "GET")) Expect(headerFields).To(HaveKeyWithValue(":path", "/index.html?foo=bar"))