Gå til indhold

gRPC

Højreklik i træstrukturen ▸ Tilføj ▸ gRPC-anmodning.

En gRPC-fane: serveradressen, kaldetypen »Unær«, den løste sti til tjeneste/metode, anmodningsbeskeden i JSON og metadataene

FeltRolle
URLServerens host:port
Service / MetodeTjenesten og den RPC, der bliver kaldt
Kaldetypeunary, server-stream, client-stream, bidirectional-stream
AnmodningsbeskedBeskeden, i JSON
MetadataNøgle/værdi-parrene, der sendes med kaldet (det er her, godkendelsesoplysningerne ligger)

Tre mulige kilder, i prioriteret rækkefølge:

  1. et descriptorsæt hentet via serverrefleksion — det er det, importen via refleksion lægger ind, og det har forrang for resten;
  2. det inline .proto-indhold, der er gemt i projektet;
  3. en sti til en .proto på disken.

Den første mulighed har en vigtig praktisk konsekvens: en anmodning, der er importeret via refleksion, bliver ved med at virke offline, uden at serveren behøver at være tilgængelig.

Angiv host:port i gRPC-importdialogen: Restorm spørger refleksionstjenesten, indlæser descriptorerne og opbygger træstrukturen — en mappe per tjeneste, en anmodning per RPC, med en eksempelbesked.

Forbinder du til samme adresse igen, bliver det opfattet som en resynkronisering, og den eksisterende træstruktur bliver opdateret i stedet for at blive duplikeret.

Hvis serveren ikke implementerer refleksion, siger Restorm det udtrykkeligt: importér så .proto-filen. Se Importér en gRPC-.proto.

Der er tre transporter til rådighed:

TransportHvornår den skal bruges
grpc (standard)Indbygget gRPC over HTTP/2
grpc-webServer bag en gRPC-Web-proxy
connectConnect-RPC-server

For alle tre streaming-tilstande viser svarpanelet beskederne, efterhånden som de kommer ind. I et scenarie bruger du handlingerne gRPC connect, gRPC send og Luk gRPC-forbindelse: forbindelsen bliver holdt åben mellem knuderne, hver modtaget besked udsender en hændelse, og lukningen udfører halvlukningen på klientsiden.

Restorm kan hoste en gRPC-mockserver: en liste af mockede metoder, hver med sin svarbesked (et JSON-array for en strøm), sin statuskode, sine afsluttende metadata eller et script. Serverrefleksion er slået til som standard, og TLS kan konfigureres med certifikat og nøgle i PEM-format. Se gRPC-mockserver.

Fjorten mål: grpcurl, grpc_cli, grpcurl i gRPC-Web, curl i Connect-RPC, JavaScript og TypeScript (@grpc/grpc-js), Python (grpcio), Go, Java (grpc-java), C# (Grpc.Net.Client), Ruby, Rust (tonic), Kotlin (grpc-kotlin), Swift (grpc-swift).