Sobes.tech
Junior — Middle

Comment implémenter l'envoi de messages dans un service gRPC ?

sobes.tech IA

Réponse de l'IA

Pour envoyer un message à un service gRPC en Go, vous devez :

  1. Générer du code Go à partir du fichier .proto décrivant le service et les messages.
  2. Créer un client gRPC et se connecter au serveur.
  3. Appeler la méthode du service nécessaire en envoyant le message.

Exemple :

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("Impossible de se connecter : %v", err)
    }
    defer conn.Close()

    client := pb.NewYourServiceClient(conn)

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

    req := &pb.YourRequest{Message: "Bonjour, gRPC !"}
    resp, err := client.YourMethod(ctx, req)
    if err != nil {
        log.Fatalf("Impossible d'envoyer le message : %v", err)
    }

    log.Printf("Réponse : %s", resp.GetReply())
}

Ici, YourServiceClient et YourRequest sont des types générés à partir du proto, et YourMethod est la méthode RPC du service.