Pokud je třeba dosáhnout interní služby gRPC přímo, poskytuje gRPC-Go pro tuto cestu možnost připojení:

conn, err := grpc.NewClient(
    "dns:///rpc.internal.example:443",
    grpc.WithTransportCredentials(transportCredentials),
    grpc.WithNoProxy(),
)

Import grpc je google.golang.org/grpc. transportCredentials je stávající konfigurace credentials.TransportCredentials aplikace. Ošetřete err a zavřete conn běžným životním cyklem klienta.

WithNoProxy vypíná použití proxy pro tento ClientConn. Ostatní klienty ani proxy prostředí procesu nemění. Cíl musí být dostupný přímo ze sítě aplikace.

Možnost se ignoruje, když WithDialer nebo WithContextDialer dodává vlastní cestu připojení; o rozhodnutích o směrování rozhoduje tento dialer. Rozhraní API je označeno jako experimentální, proto je ověřte vůči nainstalované verzi grpc-go.

NewClient vytváří klientský kanál, aniž by prokázal, že síťové připojení uspělo. Následné RPC nebo výsledek stavu připojení tento důkaz poskytne. Obcházení proxy nevyžaduje vypnutí TLS.

Související články