Ak je potrebné dostať sa k internej službe gRPC priamo, gRPC-Go poskytuje pre túto cestu možnosť pripojenia:

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

Import grpc je google.golang.org/grpc. transportCredentials je existujúca konfigurácia credentials.TransportCredentials aplikácie. Ošetrite err a zatvorte conn bežným životným cyklom klienta.

WithNoProxy vypína používanie proxy pre tento ClientConn. Ostatných klientov ani proxy prostredie procesu nemení. Cieľ musí byť dostupný priamo zo siete aplikácie.

Možnosť sa ignoruje, keď WithDialer alebo WithContextDialer poskytuje vlastnú cestu pripojenia; o rozhodnutiach o smerovaní rozhoduje tento dialer. Rozhranie API je označené ako experimentálne, preto ho overte voči nainštalovanej verzii grpc-go.

NewClient vytvára klientsky kanál bez toho, aby preukázal, že sieťové pripojenie uspelo. Následné RPC alebo výsledok stavu pripojenia poskytne tento dôkaz. Obchádzanie proxy nevyžaduje vypnutie TLS.

Súvisiace články