Sobes.tech
Junior — Middle

Hoe implementeer je het verzenden van berichten in een gRPC-service?

sobes.tech AI

Antwoord van AI

Om een bericht naar een gRPC-service in Go te sturen, moet je:

  1. Go-code genereren uit het .proto-bestand dat de service en berichten beschrijft.
  2. Een gRPC-client maken en verbinding maken met de server.
  3. De benodigde methode van de service aanroepen en het bericht verzenden.

Voorbeeld:

package main

import (
    "context"
    "log"
    "time"

    "google.golang.org/grpc"
    pb "path/to/generated/proto/package"
)

func main() {
    conn, err := grpc.Dial("localhost:50051", grpc.WithInsecure())
    if err != nil {
        log.Fatalf("Kon geen verbinding maken: %v", err)
    }
    defer conn.Close()

    client := pb.NewYourServiceClient(conn)

    ctx, cancel := context.WithTimeout(context.Background(), time.Second)
    defer cancel()

    req := &pb.YourRequest{Message: "Hallo, gRPC!"}
    resp, err := client.YourMethod(ctx, req)
    if err != nil {
        log.Fatalf("Kon bericht niet verzenden: %v", err)
    }

    log.Printf("Reactie: %s", resp.GetReply())
}

Hier, YourServiceClient en YourRequest zijn gegenereerde types uit proto, en YourMethod is de RPC-methode van de service.