go-grpc 使用

2018/12/12 14:03
阅读数 12
1. 安装
$ go get -u google.golang.org/grpc
由于墙原因可以从golang中国 第三方包下载
 
将文件下载下来拷贝到到对应文件夹下面
 
2.编译文件
protoc --go_out=plugins=grpc:. *.proto
 
3.使用
 
服务端
 
svr := grpc.NewServer()
inf.RegisterUserDataServer(svr, &UserData{})
 
type UserData struct{}
func (d *UserData) GetUser(ctx context.Context, request *inf.UserReq) (response *inf.UserRsp, err error) {
response = &inf.UserRsp{
Name: strconv.Itoa(int(request.UserId)) + ":tip",
}
return response, err
}
 
客户端
conn, err := grpc.Dial(fmt.Sprintf("127.0.0.1:%s", port), grpc.WithInsecure())
cli := inf.NewUserDataClient(conn)
getUser(cli)
 
func getUser(cli inf.UserDataClient) {
iRand := rand.Intn(100)
req := inf.UserReq{
UserId: int32(iRand),
}
rsp, err := cli.GetUser(context.Background(), &req)
if err != nil {
fmt.Println(err)
return
}
log.Printf("response:%v", rsp)
}
 
 
详细代码见
Client
 
Server
 
 
4.grpc详细使用
gRPC 官方文档中文版_V1.0 https://doc.oschina.net/grpc?t=60133
 
 
展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部