我有以下savon响应:(包含注释和其他属性,如创建日期,创建用户,位置等)
<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:getSomeAPIResponse xmlns:ns2="http://v2_0.some.webservices.csx.dtv.com/">
<return type="COMMENT" createDate="2013-11-21T10:32:17.000Z" createUser="5" location="BOSTON">my fifth note</return>
<return type="COMMENT" createDate="2013-11-21T09:04:18.000Z" createUser="POSSTD" location="BOSTON">fourth note</return>
<return type="COMMENT" createDate="2013-11-21T08:49:20.000Z" createUser="POSSTD" location="BOSTON">third note</return>
<return type="COMMENT" createDate="2013-11-21T08:43:42.000Z" createUser="POSSTD" location="BOSTON">second note</return>
<return type="COMMENT" createDate="2013-11-21T08:43:42.000Z" createUser="POSSTD" location="BOSTON">first note</return>
</ns2:getSomeAPIResponse >
</S:Body>
</S:Envelope>
当我尝试获取response.body时,它包含注释但不包含创建用户,创建日期,位置等缺少的属性,如:
{:get_some_api_response=>
{:return=>
["my fifth note",
"fourth note",
"third note",
"second note",
"first note"],
:"@xmlns:ns2"=>"http://v2_0.some.webservices.csx.dtv.com/"}}
如果可能的话,我需要在response.body或其他任何可能的方法中拥有这些属性。有什么帮助吗?
答案 0 :(得分:0)
它看起来像这样:
<?xml version="1.0" encoding="UTF-8"?>
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<ns2:rCResponse xmlns:ns2="http://v2_0.customer.webservices.csx.dtv.com/">
<return ResponseCode="OK">
<CustomerID>2072</CustomerID>
<SignupDate>2013-11-13Z</SignupDate>
</LastUpdateInfo>
<Affiliation />
<Notes>
<Note createDate="2013-11-25T12:08:22.000Z" createUser="16" location="NCR">sixth note</Note>
<Note createDate="2013-11-21T08:43:42.000Z" createUser="PSTD" location="BOSSTON">second note</Note>
<Note createDate="2013-11-21T08:43:42.000Z" createUser="PSTD" location="BOSSTON">first note</Note>
<MaskData>false</MaskData>
</Notes>
<CustomerCards />
<MaskData>false</MaskData>
</return>
</ns2:rCResponse>
</S:Body>
</S:Envelope>
我怀疑当xml节点元素同时具有属性和值时会发生这种情况。对此类情况的任何见解?