micro / go-micro

A Go microservices framework
https://go-micro.dev
Apache License 2.0
21.86k stars 2.35k forks source link

Doesn't go-micro support lowercase grpc method name in proto ? #2698

Closed PerfecterDay closed 2 months ago

PerfecterDay commented 6 months ago

Discussed in https://github.com/go-micro/go-micro/discussions/2697

Originally posted by **PerfecterDay** March 14, 2024 Hi @asim , I have a proto file defined a rpcc service below : ``` service Greeter { rpc handle (Request) returns (Response) { } } ``` in xxx.pb.micro.go, `Handle` method generated. And I have debug a little, find out go-micro use reflect to get the service name and method, and then register them in somewhere. but I see in xxx.pb.micro.go, it use lowercase method to gennerate request. This will lead 'unknown service Greeter.handle' ``` func (c *greeterService) Handle(ctx context.Context, in *Request, opts ...client.CallOption) (*Response, error) { req := c.c.NewRequest(c.name, "Greeter.handle", in) out := new(Response) err := c.c.Call(ctx, req, out, opts...) if err != nil { return nil, err } return out, nil } ``` So my question is does go-micro only support uppercase name ? Any suggetion will be appreciate
asim commented 2 months ago

No, lowercase names are not supported. That would be a private method.