5
Mam następujący schemat w moim pliku .proto
:Jak zwrócić tablicę w Protobuf usługi RPC
service MyService {
rpc GetItem (ItemQuery) returns (Item) {
}
}
message ItemQuery {
int id = 1;
}
message Item {
int id = 1;
string name = 2;
}
teraz chcę dodać inną metodę RPC do powrotu wielu elementów. coś takiego:
rpc GetItems (ItemsQuery) returns (repeated Item) {
}
Czy istnieje lepszy sposób to zrobić niż zdefiniować komunikat maszyn?
spóźnię się na imprezę, ale: Czy opcja 2 mieć przewagę nad opcją 1 lub na odwrót? – LuMa
Opcja 1 jest strumieniem, oznacza to, że zwracasz iterator, co oznacza, że możesz rozpocząć przetwarzanie elementów na kliencie, nawet zanim serwer zakończy wysyłanie ich wszystkich. Opcja 2 jest obiektem odpowiedzi, który zawiera listę twoich Przedmioty. Możesz dodać kilka innych właściwości do ItemResponse (niektóre metadane itp.) ... – Shoham