Prioritet proxy i bypass varijabli u gRPC C-Core
Pratite prioritet proxyja i zaobilaženja u gRPC Core bez pretpostavke da druga gRPC implementacija koristi isti maper.
Promena http_proxy može ne učiniti ništa ako već postoji gRPC postavka višeg prioriteta. Počnite identifikacijom implementacije: sledeće ponašanje pripada podrazumevanom HTTP proxy maperu gRPC C-Core i njegovim zavisnicima.
Maper proverava argument proxyja kanala, zatim grpc_proxy, zatim https_proxy, zatim http_proxy i zaustavlja se na prvoj postavljenoj vrednosti.
Otkrivanje zaobilaženja ima sopstveni redosled: no_grpc_proxy ima prednost nad no_proxy. Stara vrednost tamo može objasniti zašto neki cilj izbegava inače postavljeni proxy.
Ovaj maper koristi HTTP CONNECT. Njegov dokumentovani proxy URI očekuje HTTP šemu; TLS-om zaštićena gRPC usluga sama po sebi ne zahteva TLS-om zaštićenu proxy krajnju tačku. Proverite podržanu autentifikaciju odvojeno umesto da pretpostavite da je dostupna bilo kakva šema prijave u pregledaču. Za javni gRPC cilj gde su javni posrednici dozvoljeni, liste HTTP proxyja nudi kandidate krajnjih tačaka za izabrani 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 primenjujte listu C-Core varijabli kao univerzalno pravilo na sve što se zove gRPC.
Za neuspešan kanal zadržite izabrani 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 dozvoljava traženo CONNECT odredište.