go-micro.dev/v5@v5.12.0/internal/website/docs/examples/rpc-client.md (about)

     1  ---
     2  layout: default
     3  ---
     4  
     5  # RPC Client
     6  
     7  Call a running service using the Go Micro client.
     8  
     9  ```go
    10  package main
    11  
    12  import (
    13      "context"
    14      "fmt"
    15      "go-micro.dev/v5"
    16  )
    17  
    18  type Request struct { Name string }
    19  
    20  type Response struct { Message string }
    21  
    22  func main() {
    23      svc := micro.New("caller")
    24      svc.Init()
    25  
    26      req := svc.Client().NewRequest("helloworld", "Say.Hello", &Request{Name: "John"})
    27      var rsp Response
    28  
    29      if err := svc.Client().Call(context.TODO(), req, &rsp); err != nil {
    30          fmt.Println("error:", err)
    31          return
    32      }
    33  
    34      fmt.Println(rsp.Message)
    35  }
    36  ```