You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular gRPC客户端提示URL Scheme不支持,求解决方案

gRPC客户端调用方法运行时错误原因分析

问题概况

用grpc-gen-ts生成TypeScript版gRPC文件,基于生成的pb_service文件创建客户端后,调用listCredentials方法时触发运行时错误。调用代码如下:

const client = new ServiceClient("localhost:8083")
const req = new Request()
client.listCredentials(req, (error, respose) => {
  if (error) {
    console.log(error)
  } else {
    console.log(respose)
  }
})

控制台错误为:TypeError: Cannot read properties of undefined (reading 'listCredentials')

可能的原因

  • 客户端初始化缺少必要参数:ServiceClient构造时需要传入gRPC凭证参数(比如非安全凭证或TLS凭证),仅传入地址会导致实例未正确初始化,内部方法未挂载。正确的初始化方式应为:

    const client = new ServiceClient("localhost:8083", grpc.credentials.createInsecure());
    
  • 生成的gRPC文件不完整:grpc-gen-ts生成过程可能存在异常,导致ServiceClient类未正确生成listCredentials方法。可以直接检查生成的pb_service文件,确认该方法是否存在于类定义中。

  • 模块导入错误:如果ServiceClient或Request的导入路径错误、或使用了错误的导入方式(比如用默认导入替代命名导入),会导致创建的实例并非预期的gRPC客户端,自然找不到目标方法。

  • 依赖版本不兼容:grpc-gen-ts与项目中grpc或@grpc/grpc-js的版本不匹配,生成的客户端代码与运行时依赖逻辑冲突,导致方法无法正常绑定到实例。


内容的提问来源于stack exchange,提问作者Ganesh Venkatachalapathy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 23:45:11