gRPC
Clic dreapta în arbore ▸ Adaugă ▸ Cerere gRPC.

Configurare
Section titled “Configurare”| Câmp | Rol |
|---|---|
| URL | host:port al serverului |
| Serviciu / Metodă | Serviciul și RPC-ul apelat |
| Tip de apel | unary, server-stream, client-stream, bidirectional-stream |
| Mesaj de cerere | Mesajul, în JSON |
| Metadate | Perechile cheie / valoare transmise împreună cu apelul (aici trec identificatorii) |
De unde vine definiția serviciului
Section titled “De unde vine definiția serviciului”Trei surse posibile, în ordinea priorității:
- un set de descriptori obținut prin reflexie pe server — este ceea ce depune importul prin reflexie și are prioritate față de restul;
- conținutul
.protoinline, stocat în proiect; - o cale către un
.protode pe disc.
Prima opțiune are o consecință practică importantă: o cerere importată prin reflexie continuă să funcționeze offline, fără ca serverul să fie accesibil.
Importarea prin reflexie
Section titled “Importarea prin reflexie”Din fereastra modală de import gRPC, indicați host:port: Restorm interoghează
serviciul de reflexie, încarcă descriptorii și construiește arborele — un folder
pentru fiecare serviciu, o cerere pentru fiecare RPC, cu un mesaj de exemplu.
Reconectarea la aceeași adresă este recunoscută ca o re-sincronizare și actualizează arborele existent în loc să îl dubleze.
Dacă serverul nu implementează reflexia, Restorm o spune explicit: importați
atunci fișierul .proto. Vedeți
Importarea unui .proto gRPC.
Transporturi
Section titled “Transporturi”Sunt disponibile trei transporturi:
| Transport | Când se folosește |
|---|---|
grpc (implicit) | gRPC nativ peste HTTP/2 |
grpc-web | Server aflat în spatele unui proxy gRPC-Web |
connect | Server Connect-RPC |
Apeluri în flux
Section titled “Apeluri în flux”Pentru cele trei moduri în flux, panoul de răspuns afișează mesajele pe măsură ce sosesc. Într-un scenariu, folosiți acțiunile Conexiune gRPC, Trimitere gRPC și Închidere gRPC: conexiunea rămâne deschisă între cutii, fiecare mesaj primit emite un eveniment, iar închiderea efectuează semi-închiderea din partea clientului.
Modul server
Section titled “Modul server”Restorm poate găzdui un server gRPC de simulare: o listă de metode simulate, fiecare cu mesajul său de răspuns (un tablou JSON pentru un flux), cu codul său de stare, cu metadatele sale de final sau cu un script. Reflexia pe server este expusă implicit, iar TLS se configurează prin certificat și cheie în format PEM. Vedeți Simularea unui API gRPC.
Fragmente de cod
Section titled “Fragmente de cod”Paisprezece ținte: grpcurl, grpc_cli, grpcurl în gRPC-Web, curl în
Connect-RPC, JavaScript și TypeScript (@grpc/grpc-js), Python (grpcio), Go,
Java (grpc-java), C# (Grpc.Net.Client), Ruby, Rust (tonic), Kotlin
(grpc-kotlin), Swift (grpc-swift).