-
Notifications
You must be signed in to change notification settings - Fork 18k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
x/net/http2: #18672
Comments
This is a documentation issue. The HTTP2 support in the standard net/http package provides zero documentation on how a developer uses new HTTP2 functionality such as Server Push, Stream Priority, Dependent Streams, Stream Reset, etc. It also provides zero documentation on how to combine its functionality with that of the golang.org/x/net/http2 package with the exception of turning off support for HTTP2 or turning on HTTP2 debug. It's seems as though Go's design for HTTP2 assumes that normal web developers will rarely, if ever, use new HTTP2 functionality. If so, this is not correct. |
Thank you, that is a compliment! We tried hard to make sure HTTP/2 was automatic and didn't require new API. For instance, Stream Reset has no particular API. You just cancel your request like normal and the package turns it into a stream reset. Likewise, stream priorities/dependencies are handled automatically by the http2 server. Push is new in Go 1.8 and includes documentation. You didn't follow the issue template, so I don't know which version you're using. Please try Go 1.8. Go's net/http package just uses a private copy of golang.org/x/net/http2. They're not separate packages. If you have specific questions, see https://golang.org/wiki/Questions. If there's a specific thing lacking in documentation, please file specific bugs about them. General bugs like this aren't very actionable. |
Hi Brad,
Thanks for the quick response. I'm using the latest golang release, 1.7.4.
Nice to hear that Server Push is coming in 1.8.
Yes, the golang team did a great service by transparently upgrading
existing HTTP servers and clients to HTTP2.
It turns out that NginX's current HTTP2 support does not include Server
Push so I couldn't have used it anyway.
…-- Mark
On Sun, Jan 15, 2017 at 4:15 PM, Brad Fitzpatrick ***@***.***> wrote:
Thank you, that is a compliment! We tried hard to make sure HTTP/2 was
automatic and didn't require new API. For instance, Stream Reset has no
particular API. You just cancel your request like normal and the package
turns it into a stream reset. Likewise, stream priorities/dependencies are
handled automatically by the http2 server.
Push is new in Go 1.8 and includes documentation. You didn't follow the
issue template, so I don't know which version you're using. Please try Go
1.8.
Go's net/http package just uses a private copy of golang.org/x/net/http2.
They're not separate packages.
If you have specific questions, see https://golang.org/wiki/Questions.
If there's a specific thing lacking in documentation, please file specific
bugs about them. General bugs like this aren't very actionable.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#18672 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAySh6_0SrV_k7mU9JCnwJKiFC1eAOU3ks5rSrafgaJpZM4LkD7s>
.
|
Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (
go version
)?What operating system and processor architecture are you using (
go env
)?What did you do?
If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.
What did you expect to see?
What did you see instead?
The text was updated successfully, but these errors were encountered: