나는 MongoDB에서 객체를 반환하는 RPC 함수를 작성하고있다. 여기서 사용자는 호출에서 반환 된 매개 변수를 정의 할 수있다. 문제는 proto에서 '동적 인'객체를 정의하는 방법을 찾지 못하는 것입니다. 내가 찾은 모든 예제는 정적 인 객체를 기반으로하며 모든 매개 변수는 .proto 파일에 설정됩니다. 는 RPC 기능은 다음과 같습니다 :(g) rpc는 동적 객체를 매개 변수로 지원합니까?
package object;
service Object{
rpc fetch (queryReq) returns (objectRes) {}
}
message queryReq {
string id = 1;
string parameters = 2;
}
message objectRes {
// what should I write here?
}
내가 문자열로 결과를 설정할 수 있습니다 알고
, 그냥 캐릭터 라인 화 전체 개체 만이 :
이function fetch(call, callback) {
ObjectSvc.getById(call.request.id, call.request.parameter, (err, object) => {
if (err) {
log.error(err);
callback(err);
} else {
callback(null, object);
}
});
};
내 .proto 정의는 다음과 같습니다 그것은 의도 된 방식입니까? 이것을하기위한 더 나은 (그리고 더 정확한 ') 방법이 없습니까? 아니면 매번 (아마도) 큰 엉덩이 문자열을 반환해야합니까? 그것은 약간 차선책으로 보입니다.
감사합니다. 이 답변은 나의 초기 해결책을 반영하고, 대체 솔루션을 제시하며 그 단점을 설명합니다. 큰. –