Предположим, у нас есть двунаправленный поток RP C, когда клиент отправляет несколько сообщений запроса (например, несколько кадров DATA), а сервер отвечает несколькими сообщениями ответа (например, несколько кадров DATA).
Насколько я понимаю, после завершения RP C сервер обычно отправляет фрейм HEADER с заголовком состояния, а также, возможно, некоторые заголовки трейлера, такие как grp c -status и grp c -message, чтобы отметить завершение обмена запросом / ответом.
Мой вопрос: предположим, сервер отправляет неверное ответное сообщение, может ли клиент отправить кадр HEADER с grp c -status и grp * 1019? * Заголовки сообщений для передачи информации об ошибке.
Причина, по которой я спрашиваю, заключается в том, что в коде сервера c ++ (созданном из определения protobuf) я изо всех сил пытаюсь найти способ удержать этого последнего кадра HEADER, отправленного клиентом для проверки значений заголовка сообщения grp c -status и grp c s.
Кроме того, после прохождения модульных тестов в проекте grp c кажется, что только сервер возвращает статус для RP C, что еще больше вызывает сомнения.
Однако я смог отправить кадр HEADER с клиента, но, исходя из вышесказанного, я не уверен, что это правильное поведение, даже если я смог это сделать.
Буду признателен если кто-то может уточнить это для меня, так как я довольно новичок в HTTP / 2 и gRP C.