4

我正在尝试使用以下代码测试我的 grpc 客户端连接。我有 .net 核心 grpc 服务器并使用节点 js grpc 客户端进行连接。但是出现“无法连接到所有地址”错误。但是能够将 .net grpc 服务器连接到 .net grpc 客户端。非常感谢任何帮助。

不确定我是否遗漏了 grpc 客户端代码下方的任何内容。

'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);
  }
});

我得到以下错误:

{ 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' }

有人可以帮我解决这个问题。

4

0 回答 0