gRPC-Go: دور زدن کشف پروکسی با WithNoProxy
از grpc.WithNoProxy برای یک ClientConn داخلی استفاده کنید و اعتبارنامههای انتقال مورد نظر را حفظ کنید.
اگر باید به یک سرویس gRPC داخلی مستقیماً دسترسی پیدا کرد، gRPC-Go گزینهای برای اتصال در این مسیر ارائه میدهد:
conn, err := grpc.NewClient(
"dns:///rpc.internal.example:443",
grpc.WithTransportCredentials(transportCredentials),
grpc.WithNoProxy(),
)
import مربوط به grpc همان google.golang.org/grpc است. transportCredentials پیکربندی موجود credentials.TransportCredentials برنامه است. خطای err را مدیریت کنید و conn را از طریق چرخه عمر معمول کلاینت ببندید.
WithNoProxy استفاده از پروکسی را برای این ClientConn غیرفعال میکند. کلاینتهای دیگر و محیط پروکسی فرایند را بدون تغییر میگذارد. مقصد باید مستقیماً از شبکه برنامه قابل دسترسی باشد.
این گزینه زمانی نادیده گرفته میشود که WithDialer یا WithContextDialer مسیر اتصال سفارشی ارائه دهد؛ تصمیمهای مسیریابی متعلق به همان dialer است. API بالادستی آزمایشی علامتگذاری شده است، بنابراین آن را با نسخه نصبشده grpc-go بررسی کنید.
NewClient یک کانال کلاینت میسازد بدون آنکه ثابت کند اتصال شبکه برقرار شده است. نتیجه RPC یا وضعیت اتصال بعدی این شاهد را فراهم میکند. دور زدن پروکسی نیازی به غیرفعال کردن TLS ندارد.