Ruby on rails 3 如何使用rails从soap webservice返回对象列表
我使用Savon访问soap Web服务,但我只能返回一个结果,而我需要的是一个结果数组 这是我的电话: response=client.call(:获取事件,消息:{用户名:“xxxx”,密码:“xxxxxxxx”,公司代码:“12TCE”}) 我希望“response”返回公司代码为“12TCE”的所有记录,以便我能够通过以下方式输出所有记录: response.to_hash[:get_events_response]。每个do|a| a[:返回][:项目][:名称] 结束 如何根据需要返回所有记录和输出 更新1: 这是指向wsdl的链接: 这是我得到的答复:Ruby on rails 3 如何使用rails从soap webservice返回对象列表,ruby-on-rails-3,web-services,soap,savon,Ruby On Rails 3,Web Services,Soap,Savon,我使用Savon访问soap Web服务,但我只能返回一个结果,而我需要的是一个结果数组 这是我的电话: response=client.call(:获取事件,消息:{用户名:“xxxx”,密码:“xxxxxxxx”,公司代码:“12TCE”}) 我希望“response”返回公司代码为“12TCE”的所有记录,以便我能够通过以下方式输出所有记录: response.to_hash[:get_events_response]。每个do|a| a[:返回][:项目][:名称] 结束 如何根据需要返
HTTPI POST request to www.brrmedia.co.uk (httpclient)
SOAP response (status 200)
<?xml version="1.0" encoding="utf-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://www.brrmedia.co.uk/webservices/event" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:getEventsResponse xmlns:ns1="http://www.brrmedia.co.uk/webservices/event">
<return xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:objEvent[1]">
<item xsi:type="tns:objEvent">
<id xsi:type="xsd:int">119466</id>
<name xsi:type="xsd:string">blur Group - 2000 projects milestone</name>
<summary xsi:type="xsd:string"/>
<location xsi:type="xsd:string"/>
<date xsi:type="xsd:string">2013-12-17 11:30</date>
<link xsi:type="xsd:string">http://www.brrmedia.co.uk/event/119466/partner/brrsoap</link>
<company xsi:type="tns:objCompany">
<name xsi:type="xsd:string">blur Group</name>
<codes xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:objCompanyCode[1]">
<item xsi:type="tns:objCompanyCode">
<code xsi:type="xsd:string">BLUR</code>
<collection xsi:type="xsd:string">London Stock Exchange (AIM)</collection>
</item>
</codes>
<website xsi:type="xsd:string">http://www.blurgroup.com/</website>
<category xsi:type="xsd:string">Technology</category>
</company>
<presenter xsi:type="tns:objPresenter">
<name xsi:type="xsd:string"> Philip Letts</name>
<image xsi:type="xsd:string">http://www.brrmedia.co.uk/getimage/id/31215</image>
</presenter>
<media xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="tns:objMediaItem[3]">
<item xsi:type="tns:objMediaItem">
<src xsi:type="xsd:string">http://s3-us-west-2.amazonaws.com/brr-streamguys/files/BLUR/blur20131217.pdf</src>
<duration xsi:type="xsd:string">00:00:00</duration>
<filesize xsi:type="xsd:string">380</filesize>
<media_type xsi:type="xsd:string">pdf</media_type>
</item>
<item xsi:type="tns:objMediaItem">
<src xsi:type="xsd:string">http://s3-us-west-2.amazonaws.com/brr-streamguys/files/BLUR/BLUR20131217</src>
<duration xsi:nil="true" xsi:type="xsd:string"/>
<filesize xsi:nil="true" xsi:type="xsd:string"/>
<media_type xsi:type="xsd:string">presimages</media_type>
</item>
<item xsi:type="tns:objMediaItem">
<src xsi:type="xsd:string">http://s3-us-west-2.amazonaws.com/brr-streamguys/files/BLUR/BLUR20131217editv1.mp3</src>
<duration xsi:type="xsd:string">00:07:54</duration>
<filesize xsi:type="xsd:string">5557</filesize>
<media_type xsi:type="xsd:string">audio</media_type>
</item>
</media>
<type xsi:type="xsd:string">audio</type>
<height xsi:type="xsd:int">900</height>
<width xsi:type="xsd:int">680</width>
</item>
</return>
</ns1:getEventsResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
HTTPI发布请求至www.brrmedia.co.uk(httpclient)
SOAP响应(状态200)
119466
blur Group-2000项目里程碑
2013-12-17 11:30
http://www.brrmedia.co.uk/event/119466/partner/brrsoap
模糊群
模糊
伦敦证券交易所(AIM)
http://www.blurgroup.com/
技术
菲利普·莱茨
http://www.brrmedia.co.uk/getimage/id/31215
http://s3-us-west-2.amazonaws.com/brr-streamguys/files/BLUR/blur20131217.pdf
00:00:00
380
pdf
http://s3-us-west-2.amazonaws.com/brr-streamguys/files/BLUR/BLUR20131217
预映像
http://s3-us-west-2.amazonaws.com/brr-streamguys/files/BLUR/BLUR20131217editv1.mp3
00:07:54
5557
音频
音频
900
680
wsdl是什么样子的?你用SOapUI试过了吗?日志记录是什么样子的?在你提出这样的问题之前,你需要多考虑。然后我们可以提供帮助。我尝试使用SOapUI获得所需的响应,但没有成功。我用更多信息更新了这个问题。您有什么特别需要看的吗?我在您提供的响应中找不到数组。也许我找错地方了。如果响应中没有数组,则无法在客户端将其转换为数组。也许您应该检查接口的发布者,了解如何获取数组。它是否在另一种语言(如PHP)中为您工作?