请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

grpc.DialContext被摒弃的问题

推荐使用的是grpc.NewClient,但是这个方法不接受context入参,在NewClient方法中调用grpc.WithTimeout和grpc.WithBlock也不行,这两个也被摒弃了。请问有没有替代方案?

正在回答 回答被采纳积分+3

1回答

蓝胖子的编程梦 2024-08-02 11:05:07

grpc.WithBlock可以不再使用了关于设置超时,可以在grpc请求的时候通过context进行设置。类似于下面这样

cc, err := grpc.NewClient(addr,
    grpc.WithTransportCredentials(insecure.NewCredentials()))
if err != nil {
    panic(err)
}
defer cc.Close()
cli := calc.NewCalcClient(cc)
ctx,_ := context.WithTimeout(context.Background(),time.Second)
// 调用具体的rpc方法
versionRsp, err := cli.Version(ctx, &calc.Empty{})


0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信