commit | 95641704303c734b6cb2959d998ce27a6bf81ae0 | [log] [tgz] |
---|---|---|
author | Kévin Dunglas <kevin@dunglas.fr> | Fri May 13 22:32:40 2022 +0000 |
committer | Damien Neil <dneil@google.com> | Fri May 13 22:43:57 2022 +0000 |
tree | b9d33d01fb32ca626c3be880943a880bdf2ead01 | |
parent | 2871e0cb64e47e47ba7466fad6e11562caf99563 [diff] |
http2: allow sending 1xx responses Currently, it's not possible to send informational responses such as 103 Early Hints or 102 Processing. This patch allows calling WriteHeader() multiple times in order to send informational responses before the final one. If the status code is in the 1xx range, the current content of the header map is also sent. Its content is not removed after the call to WriteHeader() because the headers must also be included in the final response. The Chrome and Fastly teams are starting a large-scale experiment to measure the real-life impact of the 103 status code. Using Early Hints is proposed as a (partial) alternative to Server Push, which are going to be removed from Chrome: https://groups.google.com/a/chromium.org/g/blink-dev/c/K3rYLvmQUBY/m/21anpFhxAQAJ Being able to send this status code from servers implemented using Go would help to see if implementing it in browsers is worth it. Fixes golang/go#26089. Fixes golang/go#36734. Updates golang/go#26088. Change-Id: Iadb7be92844a3588ef4ce044f887ef5c1792f431 GitHub-Last-Rev: eee95b58b3b259781fc1052ed6143a0aa9284e04 GitHub-Pull-Request: golang/net#96 Reviewed-on: https://go-review.googlesource.com/c/net/+/291029 Run-TryBot: Damien Neil <dneil@google.com> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Damien Neil <dneil@google.com> TryBot-Result: Gopher Robot <gobot@golang.org>
This repository holds supplementary Go networking libraries.
The easiest way to install is to run go get -u golang.org/x/net
. You can also manually git clone the repository to $GOPATH/src/golang.org/x/net
.
This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://golang.org/doc/contribute.html. The main issue tracker for the net repository is located at https://github.com/golang/go/issues. Prefix your issue with “x/net:” in the subject line, so it is easy to find.