0
我想在服務器端返回grpc錯誤代碼和描述。我已經試過這如何在nodejs中返回grpc錯誤
function sayHello(call, callback) {
callback({error: {code: 400, message: "invalid input"});
}
,但我得到了來自客戶端
{ Error: Unknown Error
at /home/thanh/email/node_modules/grpc/src/node/src/client.js:434:17 code: 2, metadata: Metadata { _internal_repr: {} } }
此異常如果我不想要在類似這樣的消息定義錯誤領域。
message Hello {
string name = 1;
string error = 2; // don't want this
}
那麼將grpc錯誤發送回客戶端的正確方法是什麼?
我想指出的是,'code'場不會做任何事情在這裏。如果您想傳播給客戶端,則需要將其添加到錯誤「元數據」中。如果你想要HTTP錯誤代碼400的語義,我會建議使用相應的gRPC狀態:'grpc.status.INVALID_ARGUMENT'。 – murgatroid99