1. rpc: can't find method xxx

如果 proto 文件里面定义的是 小写开头的函数名,例如:

service User {
    rpc getUserProfile(UserRequest) returns (im.Response) {}
}

但是Go 导出的函数开头是大写的,handler 实现的时候也是大写的

func (handler *Handler) GetUserProfile(ctx context.Context, req *proto.UserRequest, res *proto.Response) error {
}

client再调用这个方法的时候就会报 rpc: can't find method getUserProfile , 因为实现的方法是 GetUserProfile 并不是 getUserProfile

标签: go, go micro, micro