gRPC
Rechtsklick im Baum ▸ Hinzufügen ▸ gRPC-Anfrage.

Konfiguration
Section titled “Konfiguration”| Feld | Rolle |
|---|---|
| URL | host:port des Servers |
| Service / Methode | Der aufgerufene Service und der RPC |
| Aufruftyp | unary, server-stream, client-stream, bidirectional-stream |
| Anfragenachricht | Die Nachricht, in JSON |
| Metadaten | Die mit dem Aufruf übermittelten Schlüssel-Wert-Paare (hier laufen die Zugangsdaten durch) |
Woher die Service-Definition kommt
Section titled “Woher die Service-Definition kommt”Drei mögliche Quellen, in Prioritätsreihenfolge:
- ein per Server-Reflexion erhaltener Deskriptorsatz — das setzt der Import per Reflexion, und er hat Vorrang vor den anderen;
- der
.proto-Inhalt inline, im Projekt gespeichert; - ein Pfad zu einer
.proto-Datei auf der Festplatte.
Die erste Option hat eine wichtige praktische Konsequenz: Eine per Reflexion importierte Anfrage funktioniert weiterhin offline, ohne dass der Server erreichbar sein muss.
Per Reflexion importieren
Section titled “Per Reflexion importieren”Geben Sie im gRPC-Import-Dialog host:port an: Restorm fragt den
Reflexionsdienst ab, lädt die Deskriptoren und baut die Baumstruktur auf —
ein Ordner pro Service, eine Anfrage pro RPC, mit einer Beispielnachricht.
Eine erneute Verbindung zur selben Adresse wird als Neusynchronisierung erkannt und aktualisiert die bestehende Baumstruktur, statt sie zu duplizieren.
Implementiert der Server keine Reflexion, sagt Restorm das explizit:
Importieren Sie dann die .proto-Datei. Siehe
Eine gRPC-.proto-Datei importieren.
Transporte
Section titled “Transporte”Drei Transporte stehen zur Verfügung:
| Transport | Wann verwenden |
|---|---|
grpc (Standard) | natives gRPC über HTTP/2 |
grpc-web | Server hinter einem gRPC-Web-Proxy |
connect | Connect-RPC-Server |
Stream-Aufrufe
Section titled “Stream-Aufrufe”Bei den drei Stream-Modi zeigt das Antwortpanel die Nachrichten fortlaufend an. Verwenden Sie in einem Szenario die Aktionen gRPC-Verbindung, gRPC-Senden und gRPC-Schließen: Die Verbindung bleibt zwischen den Bausteinen offen, jede empfangene Nachricht löst ein Ereignis aus, und das Schließen führt die Halbschließung clientseitig durch.
Servermodus
Section titled “Servermodus”Restorm kann einen gRPC-Mock-Server hosten: eine Liste simulierter Methoden, jede mit ihrer Antwortnachricht (ein JSON-Array bei einem Stream), ihrem Statuscode, ihren Abschluss-Metadaten oder einem Skript. Die Server-Reflexion wird standardmäßig bereitgestellt, und TLS ist über Zertifikat und Schlüssel im PEM-Format konfigurierbar. Siehe Eine gRPC-API simulieren.
Code-Snippets
Section titled “Code-Snippets”Vierzehn Ziele: grpcurl, grpc_cli, grpcurl in gRPC-Web, curl in
Connect-RPC, JavaScript und TypeScript (@grpc/grpc-js), Python (grpcio),
Go, Java (grpc-java), C# (Grpc.Net.Client), Ruby, Rust (tonic), Kotlin
(grpc-kotlin), Swift (grpc-swift).