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

Node.js开发gRPC服务调用返回空响应无报错,如何排查?

问题原因

你的gRPC服务端返回的结构和proto文件中定义的返回类型不匹配:
proto中AllMessages接口定义的返回类型为MsgList,该类型要求外层是对象,内部用msgs字段承载消息数组,但你在服务端实现时直接将数组savedMessages传给了回调函数,gRPC无法匹配到msgs字段,因此返回了空数组。

修复方案

修改server.js中AllMessages方法的回调参数,按照MsgList的结构传入返回值即可:

server.addService(msgProto.MsgService.service, {
    AllMessages: (_, callback) => {
        // 外层包裹符合MsgList结构的对象
        callback(null, { msgs: savedMessages });
    }
})

修改后重启服务端,客户端就能正常收到消息列表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 12:45:02