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!
- 1. W jaki sposób GitHub wykrywa, czy przeglądarka obsługuje kolory emoji?
- 2. Czy przeglądarka iPad obsługuje jQuery?
- 3. czy przeglądarka internetowa obsługuje e.preventDefault
- 4. Czy przeglądarka Wii obsługuje WebSockets?
- 5. curl nie obsługuje http2 na Macu
- 6. Sprawdź, czy przeglądarka obsługuje timepicker HTML5
- 7. Sprawdź, czy obiekt obsługuje protokół buforowy python
- 8. Jak wykryć, czy przeglądarka obsługuje zdarzenia mouseover?
- 9. W jaki sposób przeglądarka Chrome wie, który certyfikat klienta wyświetla monit o witrynę?
- 10. Jak wykryć, czy przeglądarka obsługuje MJPEG?
- 11. Wykryj, czy przeglądarka mobilna obsługuje przepełnienie: przewiń
- 12. Jak sprawdzić, czy przeglądarka obsługuje cień DOM
- 13. W jaki sposób C# wie, jaki jest typ literału?
- 14. W jaki sposób bios wie, jaki rodzaj BPB jest obecny?
- 15. Jak wykryć, czy przeglądarka obsługuje przesyłanie plików? (Mobile + Desktop)
- 16. Czy JavaScript może wykryć, czy przeglądarka użytkownika obsługuje gzip?
- 17. W jaki sposób strona wie, że analizuję ją za pomocą firebuga?
- 18. W jaki sposób KVM obsługuje przerwanie fizyczne?
- 19. W jaki sposób Stream.max() obsługuje równość?
- 20. W jaki sposób Akka obsługuje wersje wiadomości?
- 21. W jaki sposób string.Format obsługuje wartości puste?
- 22. Czy PHP obsługuje wzorzec RAII? W jaki sposób?
- 23. W jaki sposób PHP obsługuje zmienne?
- 24. W jaki sposób witryna App Store wie, czy iTunes jest zainstalowany?
- 25. W jaki sposób czytnik RSS wie, że kanał jest aktualizowany?
- 26. w jaki sposób activerecord wie, jak wykonać wstawianie lub aktualizację?
- 27. W jaki sposób Java wie jak modyfikować tablicę?
- 28. W jaki sposób Perl wie, że plik jest binarny?
- 29. W jaki sposób malloc() wie, gdzie zaczyna się hałda?
- 30. W jaki sposób przeglądarka wykonuje odpowiedź AJAX w szynach?
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