Я хочу сделать Ruby клиента.
Мой файл протока выглядит так:
syntax = "proto3";
import "google/protobuf/struct.proto";
import "google/protobuf/duration.proto";
import "discovery/protobuf/shared/v1beta1/metadata.proto";
option java_multiple_files = true;
option ruby_package = "v1beta1";
message Request {
...
google.protobuf.Struct test = 12;
}
В моем файле service_pb.rb у меня есть:
add_message 'request' do
...
optional :test, :message, 12, 'google.protobuf.Struct'
end
Теперь я пытаюсь передать параметры запроса в мой client.rb:
params = {xyz: "abc", test: { bar: "296" }}
stub = Message::Stub.new('localhost:9999', :this_channel_is_insecure)
msg = Request.new(params)
при выполнении этого я получаю: ArgumentError: Unknown field name 'bar' in initialization map entry.
Мне нужно передать объект Ha sh в параметрах запроса.