2016-08-07 20 views
4

У меня есть сервер, написанный на Java и клиент, написанный на PHP. Как клиент может исключить исключение из сервера, если что-то пойдет не так? Я не могу найти ничего об обработке исключений в документации gRPC.Обработка исключений в gRPC

Спасибо!

ответ

4

За исключением исключений, позвоните по телефону responseObserver.onError(). Если вы перейдете в StatusRuntimeException или StatusException (как правило, созданный через status.asRuntimeException()), код состояния и описание будут переданы клиенту. Необработанные исключения в обратном вызове будут отменять RPC и будут продолжать распространять исключение (обычно приводящее к вызову UncaughtExceptionHandler для исполнителя).

1

В ответ на стороне клиента (PHP) http://www.grpc.io/grpc/php/source-class-Grpc.UnaryCall.html#82

статус здесь будет иметь код и детали поля, которые будут определять код ответа и соответствующее сообщение, если установлено, как указано в ответе Эрика. Исходя из того, что соответствующая обработка ошибок может быть выполнена на клиенте.