gRPC-Go: Omseil proxy-ontdekking met WithNoProxy
Gebruik grpc.WithNoProxy vir 'n interne ClientConn terwyl die beoogde transport credentials behou word.
As 'n interne gRPC-diens direk bereik moet word, bied gRPC-Go 'n verbindingsopsie vir daardie roete:
conn, err := grpc.NewClient(
"dns:///rpc.internal.example:443",
grpc.WithTransportCredentials(transportCredentials),
grpc.WithNoProxy(),
)
Die grpc-invoer is google.golang.org/grpc. transportCredentials is die toepassing se bestaande credentials.TransportCredentials-konfigurasie. Hanteer err en sluit conn deur die normale kliëntlewensiklus.
WithNoProxy skakel proxygebruik vir hierdie ClientConn af. Dit laat ander kliënte en die proses se proxy-omgewing onveranderd. Die bestemming moet direk vanaf die toepassing se netwerk bereikbaar wees.
Die opsie word geïgnoreer wanneer WithDialer of WithContextDialer 'n pasgemaakte verbindingspad verskaf; daardie dialer besit sy roeteringsbesluite. Die opstroom-API is as eksperimenteel gemerk, so kontroleer dit teen die geïnstalleerde grpc-go-weergawe.
NewClient skep 'n kliëntkanaal sonder om te bewys dat 'n netwerkverbinding geslaag het. Die daaropvolgende RPC of verbindingstatus-uitslag lewer daardie bewys. Om 'n proxy te omseil vereis nie dat TLS gedeaktiveer word nie.