HTTP / 2客户端可以通过在双向流RPC中发送HEADER帧来终止流吗?

问题描述 投票:0回答:1

假设我们有一个双向流式RPC,客户端在其中发送多个请求消息(即多个DATA帧),而服务器在答复多个响应消息(即多个DATA帧)。

据我所知,当RPC完成后,服务器通常会发送一个带有状态标头的HEADER帧以及可能的某些报头标头,例如grpc-status和grpc-message,以标记请求/响应交换的完成。 。

我的问题是,假设服务器发送了错误的响应消息,客户端是否可以发送带有grpc-status和grpc-message标头的HEADER帧来传达有关错误的信息。

之所以问,是因为在c ++服务器代码(由protobuf定义生成)中,我正在努力寻找一种方法来保持客户端发送的最后一个HEADER帧,以验证grpc-status和grpc-message标头。

另外,在完成grpc项目中的单元测试后,似乎只有服务器返回了RPC的状态,这进一步引起了疑问。

但是我能够从客户端发送HEADER帧,但是基于以上内容,即使我能够做到,也不确定这是否是正确的行为。

如果有人可以为我澄清这一点,我将不胜感激,因为我对HTTP / 2和gRPC还是相当陌生。

http grpc http2
1个回答
0
投票
另外,在完成grpc项目中的单元测试后,似乎只有服务器返回了RPC的状态,这进一步引起了疑问。
© www.soinside.com 2019 - 2024. All rights reserved.