Я определил клиента и сервер.Все они имеют ctx (context) в качестве параметра, клиент и сервер взаимодействуют по grpc.
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)
}
Если я установлю значение в ctx в реализации GetFileVersion в клиенте, могу ли я получить это значение на сервере?
ctx = context.WithValue(parent, "test", 123)