私のprotobufユーザメッセージの例のフィールドにUUIDを添付します。protobufメッセージでUUIDを表すにはどうすればよいですか?
message User {
// field containing id as UUID type
required string email;
optional string name;
}
私はprotobufメッセージがまだUUIDタイプをサポートしていないことを知っています。私は最良の方法はUUIDメッセージタイプを持つことだと読んだことがあります。
だから、私は、ユーザーのメッセージは、私のUUIDメッセージプロト定義をインポートし、そのようなフィールドタイプとしてそれを使用します推測している:
import "myproject/UUID.proto";
message User {
required UUID id;
required string email;
optional string name;
}
私の質問はどのようにUUIDメッセージの外観が好きになるでしょうし、どのように、ありますそれをエンコード/デコードしますか? Java/ScalaとC#の互換性を目指しています。
ありがとう、あなたは答えがはっきりしていて助けになりました。私は、メッセージを少しだけ少ない帯域幅で消費するように、バイトを使用する経路を試してみようと考えています。 UUIDは 'xxxxxxxx-xxxx-4xxx-xxxx-xxxxxxxxxxxx'の形式を取っていますが、このフォームから128ビット生の値を最も効率的に取得する方法を知っていますか?または、私が正しい方向に向かうことができるオンラインリソースですか? –
UUIDを文字列として格納することで、痛みを軽減することができます。 –
@Hyperreal:FWIWを使用すると、ハイフンを削除して残りを16進文字列として解釈します。各2桁はバイトになります。しかし、ええ、おそらく文字列を格納する方が簡単です。 –