最新 grpc安装方式
package main
import (
"PackageTest/grpc_test/proto"
"context"
"google.golang.org/grpc"
"net"
)
type Server struct {
// 下列结构体 你这个可以直接拿来用 而不用 想我一样再次封装
proto.UnimplementedGreeterServer // 这是 它内部生成的一个 结构体 我这边调用 以实现鸭子类型
}
func (s *Server) SayHello(ctx context.Context, request *proto.HelloRequest) (*proto.HelloReply, error) {
return &proto.HelloReply{
Message: "hello " + request.GetName(),
}, nil
}
func main() {
g := grpc.NewServer()
proto.RegisterGreeterServer(g, &Server{})
lis, err := net.Listen("tcp", "0.0.0.0:8080")
if err != nil {
panic("failed to listen" + err.Error())
}
err = g.Serve(lis)
if err != nil {
panic("failed to start grpc" + err.Error())
}
}