Přeskočit na obsah

gRPC

Klikněte pravým tlačítkem ve stromu ▸ Přidat ▸ Požadavek gRPC.

Karta gRPC: adresa serveru, typ volání „Unární“, vyhodnocená cesta služba/metoda, zpráva požadavku v JSON a metadata

PoleRole
URLhost:port serveru
Služba / MetodaSlužba a volaná RPC
Typ voláníunary, server-stream, client-stream, bidirectional-stream
Zpráva požadavkuZpráva, v JSON
MetadataPáry klíč / hodnota přenášené s voláním (právě tudy jdou přihlašovací údaje)

Tři možné zdroje, v tomto pořadí priority:

  1. sada deskriptorů získaná serverovou reflexí — to je to, co ukládá import pomocí reflexe, a má přednost před ostatním;
  2. vložený obsah .proto, uložený v projektu;
  3. cesta k souboru .proto na disku.

První možnost má důležitý praktický důsledek: požadavek importovaný pomocí reflexe funguje dál i bez připojení, aniž by byl server dosažitelný.

V dialogu importu gRPC zadejte host:port: Restorm se dotáže služby reflexe, načte deskriptory a sestaví podstrom — jednu složku pro každou službu, jeden požadavek pro každou RPC, s ukázkovou zprávou.

Opětovné připojení na tutéž adresu se rozpozná jako opětovná synchronizace a existující podstrom se aktualizuje, místo aby se zduplikoval.

Pokud server reflexi neimplementuje, Restorm to řekne výslovně: pak importujte soubor .proto. Viz Import .proto pro gRPC.

K dispozici jsou tři transporty:

TransportKdy jej použít
grpc (výchozí)Nativní gRPC nad HTTP/2
grpc-webServer za proxy gRPC-Web
connectServer Connect-RPC

U všech tří streamovaných režimů zobrazuje panel odpovědi zprávy průběžně. Ve scénáři použijte akce Připojení gRPC, Odeslání gRPC a Zavřít připojení gRPC: připojení zůstává mezi bloky otevřené, každá přijatá zpráva vysílá událost a zavření provede poloviční uzavření na straně klienta.

Restorm umí hostovat simulační server gRPC: seznam simulovaných metod, každá se svou zprávou odpovědi (pro stream pole JSON), svým stavovým kódem, svými koncovými metadaty, nebo se skriptem. Serverová reflexe je ve výchozím stavu vystavená a TLS lze nakonfigurovat certifikátem a klíčem ve formátu PEM. Viz Simulace služby gRPC.

Čtrnáct cílů: grpcurl, grpc_cli, grpcurl v režimu gRPC-Web, curl v režimu Connect-RPC, JavaScript a TypeScript (@grpc/grpc-js), Python (grpcio), Go, Java (grpc-java), C# (Grpc.Net.Client), Ruby, Rust (tonic), Kotlin (grpc-kotlin), Swift (grpc-swift).