Jeśli wypiszę https://http2.golang.org/, przeglądarka Chrome automatycznie wyśle żądanie HTTP/2. Jak to się robi?W jaki sposób przeglądarka wie, czy strona obsługuje protokół HTTP/2?
Odpowiedz
Strona sama korzysta z biblioteki Go 1.6. https://godoc.org/golang.org/x/net/http2
Ale inne sposoby są również możliwe.
Powinieneś sprawdzić:
http://www.w3schools.com/default.asp dla niektórych podstawowych samouczków, a następnie spróbuj nauczyć się czegoś na temat nagłówków API itp., Jeśli jesteś zainteresowany tą sprawą.
Przeglądarka Chrome wysyła tylko żądanie HTTP/1.1 do witryny. Ponieważ strona internetowa ma włączoną obsługę HTTP/2, wysyła do przeglądarki komunikat, że obsługuje on protokół HTTP/2. Serwer uaktualnia protokół komunikacyjny między nim a serwerem do HTTP/2, jeśli stwierdzi, że przeglądarka jest w stanie rozpoznać HTTP/2. Zasadniczo jest to serwer, który konwertuje żądanie na połączenie HTTP/2. Przeglądarka jest zgodna z polityką aktualizacji serwera. Przeglądarka Chrome wyświetla połączenie HTTP/2 z serwerem lub witryną WWW, tylko po uaktualnieniu przez serwer protokołu komunikacyjnego.
Łańcuch "h2" identyfikuje protokół, w którym HTTP/2 korzysta z warstwy transportowej> Bezpieczeństwo (TLS) [TLS12]. Ten identyfikator jest używany w protokole negocjacji warstwy aplikacji TLS (ALPN)> rozszerzenie [TLS-ALPN] oraz w dowolnym miejscu, w którym identyfikowany jest protokół HTTP/2 przez TLS.
Jeśli serwer obsługuje przeglądarkę http2.0, to serwer obsługuje protokół HTTP2.0 w negocjowaniu protokołu warstwy aplikacji TLS. refer link!
HTTP2 nie jest rozległą tajemnicą. Możesz iść i przeczytać RFC, to ci mówi. –
w RFC jest dość dobre wytłumaczenie, jak to działa: https://tools.ietf.org/html/rfc7540#section-3.2 – hansaplast