ਜੇ ਕਿਸੇ ਅੰਦਰੂਨੀ gRPC ਸੇਵਾ ਤੱਕ ਸਿੱਧਾ ਪਹੁੰਚਣਾ ਹੈ, ਤਾਂ gRPC-Go ਉਸ ਮਾਰਗ ਲਈ ਕਨੈਕਸ਼ਨ ਵਿਕਲਪ ਦਿੰਦਾ ਹੈ:

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

grpc ਆਯਾਤ google.golang.org/grpc ਹੈ। transportCredentials ਐਪ ਦੀ ਮੌਜੂਦਾ credentials.TransportCredentials ਸੰਰਚਨਾ ਹੈ। err ਸੰਭਾਲੋ ਅਤੇ ਆਮ ਕਲਾਇੰਟ ਜੀਵਨ ਚੱਕਰ ਰਾਹੀਂ conn ਬੰਦ ਕਰੋ।

WithNoProxy ਇਸ ClientConn ਲਈ ਪ੍ਰੌਕਸੀ ਵਰਤੋਂ ਬੰਦ ਕਰ ਦਿੰਦਾ ਹੈ। ਇਹ ਹੋਰ ਕਲਾਇੰਟਾਂ ਅਤੇ ਪ੍ਰਕਿਰਿਆ ਦੇ ਪ੍ਰੌਕਸੀ ਵਾਤਾਵਰਣ ਨੂੰ ਬਦਲਦਾ ਨਹੀਂ। ਮੰਜ਼ਿਲ ਐਪ ਦੇ ਨੈੱਟਵਰਕ ਤੋਂ ਸਿੱਧੀ ਪਹੁੰਚਯੋਗ ਹੋਣੀ ਚਾਹੀਦੀ ਹੈ।

ਜਦੋਂ WithDialer ਜਾਂ WithContextDialer ਕਸਟਮ ਕਨੈਕਸ਼ਨ ਮਾਰਗ ਦਿੰਦਾ ਹੈ ਤਾਂ ਇਹ ਵਿਕਲਪ ਅਣਡਿੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ; ਉਸ ਡਾਇਲਰ ਕੋਲ ਆਪਣੇ ਰੂਟਿੰਗ ਫੈਸਲੇ ਹੁੰਦੇ ਹਨ। ਅੱਪਸਟ੍ਰੀਮ API ਨੂੰ ਪ੍ਰਯੋਗਾਤਮਕ ਚਿੰਨ੍ਹਿਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਇਸ ਲਈ ਇਸਨੂੰ ਸਥਾਪਿਤ grpc-go ਵਰਜਨ ਨਾਲ ਜਾਂਚੋ।

NewClient ਨੈੱਟਵਰਕ ਕਨੈਕਸ਼ਨ ਸਫਲ ਹੋਣ ਦਾ ਸਬੂਤ ਦਿੱਤੇ ਬਿਨਾਂ ਕਲਾਇੰਟ ਚੈਨਲ ਬਣਾਉਂਦਾ ਹੈ। ਅਗਲਾ RPC ਜਾਂ ਕਨੈਕਸ਼ਨ-ਸਥਿਤੀ ਨਤੀਜਾ ਉਹ ਸਬੂਤ ਦਿੰਦਾ ਹੈ। ਪ੍ਰੌਕਸੀ ਬਾਈਪਾਸ ਕਰਨ ਲਈ TLS ਬੰਦ ਕਰਨਾ ਲਾਜ਼ਮੀ ਨਹੀਂ।

ਸੰਬੰਧਿਤ ਲੇਖ