GRPC client Error: 14 UNAVAILABLE: failed to connect to all addresses
Asked Answered
I

1

6

Im trying to test my grpc client connection using below code. I have .net core grpc server and using node js grpc client to connect. But getting "failed to connect to all addresses" error. BUt able to connect .net grpc server to .net grpc client. Any help much appreciated.

Not sure if im missing anything from below grpc client code.

'use strict';
//Same as the other projects we import fs for reading documents, in this case employees.js json
const fs = require('fs');

//Importing GRPC and the proto loader
const grpc = require('grpc');
const loader = require('@grpc/proto-loader');



//reads the proto
const packageDefinition = loader.loadSync('Repository.proto', {
  keepCase: false,
  longs: String,
  enums: String, 
  defaults: true,
  oneofs: true
});



//Loads the proto file to be used in constant pkg
const pkg = grpc.loadPackageDefinition(packageDefinition);

//Creates server
const PORT = 5001;

//console.log(pkg);

const client = new pkg.repository.Repository('localhost:5001', grpc.credentials.createInsecure());

 client.GetUpdates({}, function (err, response) {
    console.log("----Response error----");
    if (err) {
    
      console.log(err);
  } else {
      console.log(response);
  }
});

im getting below error:

{ Error: 14 UNAVAILABLE: failed to connect to all addresses
    at Object.exports.createStatusError (/mnt/c/Users/ht9638/Desktop/workspace/current-workspace/gRPCNodeJS/firstService/node_modules/grpc/src/common.js:91:15)
    at Object.onReceiveStatus (/mnt/c/Users/ht9638/Desktop/workspace/current-workspace/gRPCNodeJS/firstService/node_modules/grpc/src/client_interceptors.js:1209:28)
    at InterceptingListener._callNext (/mnt/c/Users/ht9638/Desktop/workspace/current-workspace/gRPCNodeJS/firstService/node_modules/grpc/src/client_interceptors.js:568:42)
    at InterceptingListener.onReceiveStatus (/mnt/c/Users/ht9638/Desktop/workspace/current-workspace/gRPCNodeJS/firstService/node_modules/grpc/src/client_interceptors.js:618:8)
    at callback (/mnt/c/Users/ht9638/Desktop/workspace/current-workspace/gRPCNodeJS/firstService/node_modules/grpc/src/client_interceptors.js:847:24)
  code: 14,
  metadata: Metadata { _internal_repr: {}, flags: 0 },
  details: 'failed to connect to all addresses' }

Can someone please help me on this issue.

Invalidate answered 30/9, 2020 at 13:41 Comment(5)
probably a dumb suggestion, but is it the correct port?Sincerity
Yes. That is correct port.Invalidate
I can't help but notice that you are using port 5001, which is similar to the port commonly used in the gRPC examples, 50051. Are you sure you got the port number right?Fanciful
As a sanity check, could you try calling the grpc endpoint using BloomRPC - github.com/uw-labs/bloomrpc I think you should do a quick test with 50051 also.Sincerity
I don't see anything outright wrong with your example, but connections from nodejs to C# server is something we test continously in our test suite, so my guess is that you've some likely setup something incorrectly (perhaps the server is listening on a different port or so). Feel free to try github.com/fullstorydev/grpcurl to test requests to your server manually.Crescent
H
1

I have the same issue when I tried to follow gRPC nodejs tutorials from the official documentation.

Root cause(for me): port 50051 is the default port used from the main documentation, when I checked the list of the ports being used on my laptop, it turned out that port 50051 was used by "NVIDIA Web Helper.exe".

How I found this out: I tried to change the port slightly to 50052 and console.log the err and it shows as expectedenter image description here

Hexylresorcinol answered 19/12, 2022 at 4:7 Comment(3)
You should add code instead of picture of it .Dielu
@Dielu sure, thanks for the feedback, I'll keep that in mind for future answer or questionsHexylresorcinol
@Hexylresorcinol you should edit the answerKerch

© 2022 - 2025 — McMap. All rights reserved.