github.com/micro/go-micro/examples@v0.0.0-20210105173217-bf4ab679e18b/metadata/cli/main.go (about) 1 package main 2 3 import ( 4 "fmt" 5 6 hello "github.com/micro/go-micro/examples/greeter/srv/proto/hello" 7 "github.com/micro/go-micro/v2" 8 "github.com/micro/go-micro/v2/metadata" 9 10 "context" 11 ) 12 13 func main() { 14 service := micro.NewService() 15 service.Init() 16 17 cl := hello.NewSayService("go.micro.srv.greeter", service.Client()) 18 19 // Set arbitrary headers in context 20 ctx := metadata.NewContext(context.Background(), map[string]string{ 21 "User": "john", 22 "ID": "1", 23 }) 24 25 rsp, err := cl.Hello(ctx, &hello.Request{ 26 Name: "John", 27 }) 28 if err != nil { 29 fmt.Println(err) 30 return 31 } 32 33 fmt.Println(rsp.Msg) 34 }