gRPC
Jobb kattintás a projektfában ▸ Hozzáadás ▸ gRPC-kérés.

Konfiguráció
Section titled “Konfiguráció”| Mező | Szerepe |
|---|---|
| URL | A kiszolgáló host:port címe |
| Szolgáltatás / Metódus | A hívott szolgáltatás és RPC |
| Hívás típusa | unary, server-stream, client-stream, bidirectional-stream |
| Kérésüzenet | Az üzenet, JSON formában |
| Metaadatok | A hívással együtt továbbított kulcs/érték párok (a hitelesítő adatok is itt utaznak) |
Honnan származik a szolgáltatás definíciója
Section titled “Honnan származik a szolgáltatás definíciója”Három lehetséges forrás, prioritási sorrendben:
- a kiszolgálóoldali reflexióval megszerzett descriptor-készlet — ezt hozza létre a reflexión alapuló importálás, és minden mással szemben elsőbbséget élvez;
- a projektben tárolt beágyazott
.prototartalom; - a lemezen lévő
.protofájl elérési útja.
Az első lehetőségnek fontos gyakorlati következménye van: a reflexióval importált kérés offline is működik tovább, anélkül hogy a kiszolgálónak elérhetőnek kellene lennie.
Importálás reflexióval
Section titled “Importálás reflexióval”A gRPC-importálás párbeszédpanelén elég megadni a host:port címet: a Restorm
lekérdezi a reflexiós szolgáltatást, betölti a descriptorokat, és felépíti a
projektfát — szolgáltatásonként egy mappa, RPC-nként egy kérés, példaüzenettel.
Az ugyanahhoz a címhez történő újbóli kapcsolódást a Restorm újraszinkronizálásként ismeri fel, és a meglévő fát frissíti ahelyett, hogy megkettőzné.
Ha a kiszolgáló nem valósítja meg a reflexiót, a Restorm ezt kifejezetten
jelzi: ilyenkor a .proto fájlt kell importálni. Lásd:
gRPC .proto importálása.
Szállítási módok
Section titled “Szállítási módok”Három szállítási mód áll rendelkezésre:
| Szállítási mód | Mikor érdemes használni |
|---|---|
grpc (alapértelmezett) | Natív gRPC HTTP/2 felett |
grpc-web | gRPC-Web proxy mögötti kiszolgáló |
connect | Connect-RPC kiszolgáló |
Folyam alapú hívások
Section titled “Folyam alapú hívások”Mindhárom folyam alapú módban a válaszpanel beérkezésük sorrendjében mutatja az üzeneteket. Egy forgatókönyvben a gRPC-kapcsolat, gRPC-küldés és gRPC-zárás műveletek használhatók: a kapcsolat a blokkok között nyitva marad, minden beérkezett üzenet eseményt bocsát ki, a zárás pedig elvégzi az ügyféloldali félbezárást.
Kiszolgálómód
Section titled “Kiszolgálómód”A Restorm szimulációs gRPC-kiszolgálót is képes üzemeltetni: a szimulált metódusok listáját kell megadni, mindegyiknél a válaszüzenettel (folyam esetén JSON-tömbbel), az állapotkóddal, a záró metaadatokkal vagy egy szkripttel. A kiszolgálóoldali reflexió alapértelmezés szerint közzé van téve, a TLS pedig PEM formátumú tanúsítvánnyal és kulccsal állítható be. Lásd: gRPC-szolgáltatás szimulálása.
Kódrészletek
Section titled “Kódrészletek”Tizennégy cél: grpcurl, grpc_cli, grpcurl gRPC-Web módban, curl
Connect-RPC módban, JavaScript és TypeScript (@grpc/grpc-js), Python (grpcio),
Go, Java (grpc-java), C# (Grpc.Net.Client), Ruby, Rust (tonic), Kotlin
(grpc-kotlin), Swift (grpc-swift).