go
config_error
ai_generated
true
rpc 错误:code = Unimplemented desc = 未知服务 pb.UserService
rpc error: code = Unimplemented desc = unknown service pb.UserService
ID: go/grpc-unimplemented-unknown-service
80%修复率
89%置信度
0证据数
2024-02-27首次发现
版本兼容性
| 版本 | 状态 | 引入 | 弃用 | 备注 |
|---|---|---|---|---|
| 1.45+ | active | — | — | — |
根因分析
客户端调用了服务端未注册的服务。通常是生成的客户端代码过旧、服务全限定名拼写错误,或服务端忘记调用 RegisterUserServiceServer。
English
The client called a service that the server has not registered. Usually a stale generated client, a typo in the fully-qualified service name, or a server that forgot to call RegisterUserServiceServer.
解决方案
-
95% 成功率
s := grpc.NewServer() pb.RegisterUserServiceServer(s, &userServer{}) reflection.Register(s) // enables grpcurl discovery log.Fatal(s.Serve(lis)) -
90% 成功率
// protoc --go_out=. --go-grpc_out=. user.proto // then confirm: grpcurl -plaintext localhost:50051 list
无效尝试
常见但无效的做法:
-
95% 失败
Unimplemented is a routing error on the server, not a TLS issue; disabling TLS does nothing for service lookup.
-
90% 失败
The server will never learn the service; retries return Unimplemented deterministically.