Sobes.tech
Junior — Middle

Vysvetlite, čo sa rozumie pod metadátami v protokole gRPC a akú úlohu zohrávajú.

sobes.tech AI

Odpoveď od AI

V gRPC sú metadáta doplnkové informácie, ktoré sa prenášajú spolu s požiadavkou alebo odpoveďou, ale nepatria do hlavného tela správy.

Úloha metadát:

  • Prenos servisných informácií, ako sú tokeny na overenie, identifikátory relácií, jazykové nastavenia.
  • Riadenie správania volania (napríklad časové limity, priority).
  • Pomáhajú implementovať ďalšie vrstvy logiky bez zmeny štruktúry hlavnej správy.

V Go sú metadáta reprezentované ako páry kľúč-hodnota a môžu byť pridané do kontextu volania. Napríklad:

import (
    "context"
    "google.golang.org/grpc/metadata"
)

md := metadata.Pairs("authorization", "Bearer token123")
ctx := metadata.NewOutgoingContext(context.Background(), md)
// ctx sa odovzdáva volaniu gRPC