اگر کسی اندرونی 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 بند کرنا ضروری نہیں۔

متعلقہ مضامین