4
protogenツールを使用した後、私がメッセージを送信するためのメッセージタイプがあります。プロトコルバッファを使用してバイナリデータを送信する正しい方法は何ですか?
type File struct {
Info string `protobuf:"bytes,1,opt,name=info,json=info" json:"info,omitempty"`
BytesValues []byte `protobuf:"bytes,2,opt,name=bytes_values,json=bytesValues,proto3" json:"bytes_values,omitempty"`
}
を、私はそうのようなBytesValues
フィールドを使用して、いくつかのバイナリデータを送信しようとしています:
filePath := filepath.Join("test", "myfile.bin")
f, _ := ioutil.ReadFile(filePath) // error return value ignored for brevity
msg := File{BytesValues: f}
body, _ := proto.Marshal(msg) // encode
サーバがいるようです私はそれに送信しているメッセージを解読する際に問題があります。これは、プロトコルバッファを使用して[]byte
フィールドを使用してバイナリデータを送信する正しい方法ですか?
protobufを使用してprotobufを使用して大量のデータを敗北させる*の実際の目的*を使用しないでください。 protobufのRPCソケット情報をエンコードする方法と、サービスが代わりにファイルを転送する方法はありますか? – eduncan911
サーバーの応答は何ですか? – Sean
@ eduncan911私は通信しようとしているサーバがApache Phoenixのクエリサーバで使用されているAvatica(Apache Calciteの一部)であるため、手で結ばれています。 – F21