Dacă un serviciu gRPC intern trebuie accesat direct, gRPC-Go oferă o opțiune de conexiune pentru acea rută:

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

Importul grpc este google.golang.org/grpc. transportCredentials este configurația credentials.TransportCredentials existentă a aplicației. Gestionați err și închideți conn prin ciclul obișnuit de viață al clientului.

WithNoProxy dezactivează utilizarea proxy pentru acest ClientConn. Lasă ceilalți clienți și mediul proxy al procesului neschimbate. Destinația trebuie să fie accesibilă direct din rețeaua aplicației.

Opțiunea este ignorată când WithDialer sau WithContextDialer furnizează o cale de conexiune personalizată; acel dialer decide rutarea. API-ul upstream este marcat ca experimental, așa că verificați-l față de versiunea grpc-go instalată.

NewClient creează un canal de client fără a dovedi că o conexiune de rețea a reușit. RPC-ul următor sau rezultatul stării conexiunii oferă acea dovadă. Ocolirea unui proxy nu necesită dezactivarea TLS.

Articole similare