TypeError: Cannot read properties of undefined (reading 'MethodInfo') in react js app using grpc-web

TypeError: Cannot read properties of undefined (reading 'MethodInfo') in react js app using grpc-web

我正在使用 grpc-web 通过 gRPC 与 java 后端通信。我在前端使用 ReactJS,它使用 grpc-web 来解释 protobuffers。

我收到这个奇怪的错误。我的原型是正确的(我使用名为“bloom”的反射工具进行了检查,所以后端很好)这似乎是我在 ReactJS 中使用的 grpc 库内部的错误。

我收到以下错误:

TypeError: Cannot read properties of undefined (reading 'MethodInfo')

以上错误指向我的proto文件:dashboard_services_grpc_web_pb.js

在这个文件中,它指向这一行

const methodInfo_DashboardService_userLogin = new grpc.web.AbstractClientBase.MethodInfo( ...... );

我很难解决这个问题,因为根据我的理解,grpc.web.AbstractClientBasegrpc-web 的原生内容。

我也重新安装了我的node_modules,希望这是一个版本问题,但无济于事。

我遇到了同样的问题,因为我使用的是旧版本的可执行文件 protoc-gen-grpc-web 而不是当前版本的 grpc-web。两者都使用 1.3.0 版为我解决了这个问题。 您可以下载 protoc-gen-grpc-web here.

的最新版本

在我的例子中,它发生在清除缓存之后,因为我们有:

"grpc-web": "^1.2.1",

而且是安装版1.3.0我改成:

"grpc-web": "1.2.1",

yarn 再次解决这个问题!