gRPC C-Core proxy i prioritet varijabli zaobilaženja
Pratite prioritet proxyja i zaobilaženja u gRPC Core bez pretpostavke da druga gRPC implementacija koristi isti maper.
Promjena http_proxy može ne učiniti ništa ako već postoji gRPC postavka višeg prioriteta. Počnite identifikacijom implementacije: sljedeće ponašanje pripada zadanom HTTP proxy maperu gRPC C-Core i njegovim zavisnicima.
Maper provjerava argument proxyja kanala, zatim grpc_proxy, zatim https_proxy, zatim http_proxy i zaustavlja se na prvoj postavljenoj vrijednosti.
Otkrivanje zaobilaženja ima vlastiti redoslijed: no_grpc_proxy ima prednost nad no_proxy. Stara vrijednost tamo može objasniti zašto neki cilj izbjegava inače postavljeni proxy.
Ovaj maper koristi HTTP CONNECT. Njegov dokumentirani proxy URI očekuje HTTP šemu; TLS-om zaštićena gRPC usluga sama po sebi ne zahtijeva TLS-om zaštićenu proxy krajnju točku. Provjerite podržanu autentifikaciju odvojeno umjesto da pretpostavite da je dostupna bilo kakva shema prijave u pregledniku. Za javni gRPC cilj gdje su javni posrednici dopušteni, liste HTTP proxyja nudi kandidate krajnjih točaka za odabrani HTTP proxy URI; potvrdite pristup stvarnom CONNECT cilju i portu.
Java, Go, JavaScript ili druga gRPC implementacija može imati drugačiji transportni kod i konfiguraciju. Ne primjenjujte listu C-Core varijabli kao univerzalno pravilo za sve što se zove gRPC.
Za neuspjeli kanal zadržite odabrani proxy, odluku o zaobilaženju, cilj i fazu greške. Dostupan HTTP API kroz drugi klijent ne dokazuje da je ovaj maper koristio iste postavke ili da proxy dopušta traženo CONNECT odredište.