Změna http_proxy nemusí nic udělat, pokud už existuje nastavení gRPC s vyšší prioritou. Začněte identifikací implementace: následující chování patří výchozímu mapovači HTTP proxy v gRPC C-Core a na něm závislým částem.

Mapovač kontroluje argument proxy kanálu, poté grpc_proxy, poté https_proxy, poté http_proxy a zastaví se u první nastavené hodnoty.

Zjišťování obcházení má vlastní pořadí: no_grpc_proxy má přednost před no_proxy. Stará hodnota tam může vysvětlit, proč se určitý cíl vyhýbá jinak nastavené proxy.

Tento mapovač používá HTTP CONNECT. Jeho dokumentované URI proxy očekává schéma HTTP; služba gRPC chráněná TLS sama o sobě nevyžaduje proxy koncový bod chráněný TLS. Podporovanou autentizaci ověřujte samostatně, místo abyste předpokládali, že je dostupné jakékoli schéma přihlášení prohlížeče. Pro veřejný cíl gRPC, kde jsou povoleni veřejní zprostředkovatelé, seznamu HTTP proxy nabízí kandidáty koncových bodů pro zvolené URI HTTP proxy; potvrďte přístup ke skutečnému cíli CONNECT a portu.

Implementace gRPC v Javě, Go, JavaScriptu nebo jiném jazyce může mít jiný transportní kód a konfiguraci. Neaplikujte seznam proměnných C-Core jako univerzální pravidlo na vše, co se jmenuje gRPC.

U neúspěšného kanálu uchovejte zvolenou proxy, rozhodnutí o obcházení, cíl a fázi chyby. Dostupné HTTP API přes jiného klienta nedokazuje, že tento mapovač použil stejné nastavení nebo že proxy povoluje požadovaný cíl CONNECT.

Související články