gRPC-Go: ignorar a descoberta de proxy com WithNoProxy
Use grpc.WithNoProxy para um ClientConn interno, mantendo as transport credentials pretendidas.
Se for necessário alcançar diretamente um serviço gRPC interno, o gRPC-Go oferece uma opção de conexão para essa rota:
conn, err := grpc.NewClient(
"dns:///rpc.internal.example:443",
grpc.WithTransportCredentials(transportCredentials),
grpc.WithNoProxy(),
)
A importação grpc é google.golang.org/grpc. transportCredentials é a configuração credentials.TransportCredentials existente da aplicação. Trate err e feche conn através do ciclo de vida normal do cliente.
WithNoProxy desativa o uso de proxy para este ClientConn. Deixa os outros clientes e o ambiente de proxy do processo inalterados. O destino tem de ser acessível diretamente a partir da rede da aplicação.
A opção é ignorada quando WithDialer ou WithContextDialer fornecem um caminho de conexão personalizado; esse dialer decide o seu próprio encaminhamento. A API de upstream está marcada como experimental, por isso verifique-a face à versão do grpc-go instalada.
NewClient cria um canal de cliente sem provar que uma conexão de rede foi estabelecida. O RPC seguinte ou o resultado do estado da conexão fornecem essa prova. Ignorar um proxy não exige desativar o TLS.