RC0*_*993 3 c++ client-server wireshark server grpc
我是 gRPC 框架的新手,我在我的 PC 上创建了一个示例客户端服务器(参考this)。
在我的客户端-服务器应用程序中,我实现了一个简单的 RPC
service NameStudent {
rpc GetRoll(RollNo) returns (Details) {}
}
Run Code Online (Sandbox Code Playgroud)
客户发送RollNo并接收他/她的详细信息,其中包括姓名、年龄、性别、父母姓名和 Roll No。
message RollNo{
int32 roll = 1;
}
message Details {
string name = 1;
string gender = 2;
int32 age = 3;
string parent = 4;
RollNo rollid = 5;
}
Run Code Online (Sandbox Code Playgroud)
实际的服务器和客户端代码是根据此处解释的示例代码改编的
现在我的服务器能够监听“0.0.0.0:50051(地址:端口)”,客户端能够在“localhost:50051”上发送卷号并接收详细信息。
我想查看客户端和服务器之间传输的实际二进制数据。我尝试过使用 Wireshark,但我不明白我在这里看到的是什么。
需要帮助理解此处的wireshark,或任何其他可用于查看二进制数据的方式。
Wireshark 使用端口来确定如何解码通信,并且它不知道与 50051 关联的任何协议。因此您需要将其配置为将其视为 HTTP。
右键单击一行并在上下文菜单中选择“解码为...”。
然后将“当前”设置为“HTTP”或“HTTP2”(HTTP 通常会自动检测 HTTP2)并单击“确定”。
然后应该对 HTTP/2 帧进行解码。如果使用最新版本的 Wireshark,您还可能会看到已解码的 gRPC 帧。
| 归档时间: |
|
| 查看次数: |
3990 次 |
| 最近记录: |