首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >上下文的内容可以在grpc中传输吗?

上下文的内容可以在grpc中传输吗?
EN

Stack Overflow用户
提问于 2018-10-16 06:52:13
回答 1查看 916关注 0票数 2

我已经定义了一个客户机和服务器。它们都有一个ctx(上下文)作为参数,客户机和服务器通过grpc进行通信。

代码语言:javascript
复制
type Client interface {
    GetFileVersion(ctx context.Context, in *Req) (*Resp, error)
}

type client struct {
    cc *grpc.ClientConn
}

func (c *client) GetFileVersion(ctx context.Context, in *Req) (*Resp, error) {
    out := new(Resp)
    err := grpc.Invoke(ctx, "/testpb/GetFileVersion", in, out, c.cc, opts...)
    if err != nil {
        return nil, err
    }
    return out, nil
}



type Server interface {
    GetFileVersion(context.Context, *Req) (*Resp, error)
}

如果我在客户端实现GetFileVersion时在ctx中设置值,那么可以在服务器中获得这个值吗?

代码语言:javascript
复制
ctx = context.WithValue(parent, "test", 123)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-16 07:03:26

context是全局请求变量的通用注册表。它不应该转义请求范围。考虑换一种方法。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52829481

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档