gpt4 book ai didi

c++ - 在 GRPC 中使用字节数组 (cpp)

转载 作者:搜寻专家 更新时间:2023-10-31 01:31:48 24 4
gpt4 key购买 nike

我在使用字节数组时遇到了很多 GRPC 问题。这是通过.proto

message myType {
int32 format = 1;
bytes data = 2;
}

我将 CPP 用于服务器实现,将 Java 用于客户端。在 Java 中使用 ByteString 是一件轻而易举的事,但不能在 CPP 中反序列化(byte[] 正在从 Java 发送的内容中更改)。

缓冲区是一个字节[] byte buffer[<large_size>]我正在将字节数组(它是一个图像)转换成一个更小的字节数组,并且在尝试转换从 grpc 接收到的 byte[] 时它崩溃了。 CPP中的转换功能很好,因为我在使用GRPC之前对相同的图像使用过它

这是CPP的反序列化代码。这里“req”是一个myType对象,buffer是一个byte[]

myFormat = req->format();
dataLen = req->data().length();
memcpy(buffer, req->data().c_str(), dataLen);

据我了解,req->data() 是 cpp std::string 格式

最佳答案

在客户端,您应该传递参数及其长度。
parameter.set_framemat(mat, 12);

关于c++ - 在 GRPC 中使用字节数组 (cpp),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44926791/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com