|
|
Publisert 17.08.2025 kl. 17:42:11
|
|
|
|

Krav: Når klienten brukes til å sende metadata, hvordan skal ASP.NET Core-serveren hente dem?
Oversikt over metadata
Metadata er en bypass-kanal som gjør det mulig å overføre informasjon knyttet til RPC mellom klient og server.
gRPC-metadata er nøkkelverdi-pardata som sendes med den første eller siste gRPC-forespørselen eller svaret. Den brukes til å gi tilleggsinformasjon om samtalen, som autentiseringsopplysninger, sporingsinformasjon eller egendefinerte headers.
gRPC-metadata implementeres ved bruk av HTTP/2-headere. Nøkkelen er en ASCII-streng, og verdien kan være enten en ASCII-streng eller binære data. Nøkler er ikke små og små og små bokstaver og kan ikke begynne med grpc- prefikset, som er reservert av gRPC selv.
gRPC-metadata kan sendes og mottas av både klient og server. Headeren sendes før de første forespørselsdataene sendes fra klienten til serveren, og på samme måte før de første svardataene sendes fra serveren til klienten. Halen sendes når serveren slår av RPC.
gRPC-metadata har ulike formål, slik som:
Autentisering: gRPC-metadata kan brukes til å sende autentiseringsinformasjon til serveren. Dette kan brukes til å implementere ulike autentiseringsordninger som OAuth2 eller JWT ved bruk av standard HTTP Authorization-headers. Sporing: gRPC-metadata kan brukes til å sende sporingsinformasjon til serveren. Dette kan brukes til å spore fremdriften til forespørsler i et distribuert system. Egendefinerte headers: gRPC-metadata kan brukes til å sende tilpassede headers til eller fra en server til en klient. Dette kan brukes til å implementere applikasjonsspesifikke funksjoner som lastbalansering, hastighetsbegrensning eller å gi detaljert feilinformasjon fra serveren til klienten. Intern bruk: gRPC bruker HTTP/2-headere og tails, som vil bli integrert med metadataene som er spesifisert av applikasjonen din.
Prøve
Lag en ny mellomvare-pipeline på serversiden for å hente forespørselshodet, og koden er som følger:
Prøv å sende inn en forespørsel med postmann som vist nedenfor:
Du kan se at verdien av metadatasettet ved bruk av Postman kan mottas normalt på serversiden.
Bruk C#-konsollen for å sette opp metadata for å sende forespørsler, koden er som følger:
Som vist nedenfor:
Å sette verdien av metadata ved hjelp av C#-kode kan også mottas på serversiden. Hvis du bruker gRPC client factory for å legge til globalt, er koden som følger:
Referanse:
Innloggingen med hyperkoblingen er synlig.
Innloggingen med hyperkoblingen er synlig. |
Foregående:Bruk Postman til å teste (feilsøke) gRPC-tjenestenNeste:Blockchain-konsensusmekanisme: PoW, PoS, DPoS
|