Savon:如何在SOAP请求的哈希体中指定自定义XML?

在SOAP请求中,我需要指定具有不同值的重复键,如下所示:

soap.body = {:query => { :fields => { :string => 'Email', :string => 'FirstName', :string => 'LastName' } } 

使用此哈希,请求将形成为:

 LastName 

最后一个:字符串对。 所以,如果我把:

 soap.body = {:query => { :fields => "EmailFirstNameLastName" } 

这将导致:

 <string>Email</string><string>FirstName</string><string>LastName</string> 

有没有办法在哈希中得到这个?:

 EmailFirstNameLastName 

注意:我使用的是Ruby 1.8.7。

你的第一个代码不能工作,这不是Savon的错,哈希中的重复键只是被覆盖。 你尝试过arrays吗?

 soap.body = { :query => { :fields => {:string => ['Email', 'FirstName', 'LastName'], } } 

另请查看: https : //github.com/rubiii/savon/issues/45