0
我目前正在開發新項目,我對savon很陌生。 我目前使用Ruby-1.8.7和薩翁-1.0.0,我有以下SOAP XML請求Savon soap請求紅寶石格式
<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://webservices">
<soapenv:Header/>
<soapenv:Body>
<web:InvokeComponent1 soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<PartnerName xsi:type="xsd:string">ABC</PartnerName>
<ComponentName xsi:type="xsd:string">TestingServices</ComponentName>
<arg1Value xsi:type="xsd:string">[CONTROL]
RequestID=83f6baab
RequestTime=13:14:15
RequestDate=08/08/2013
GenerateLead=N
Auto=Y
</arg1Value>
<RaUID xsi:type="xsd:string">username</RaUID>
<RaPW xsi:type="xsd:string">password1</RaPW>
<AgNO xsi:type="xsd:string">12345</AgNO>
</web:InvokeComponent1>
</soapenv:Body>
</soapenv:Envelope>
這是我的薩翁代碼我寫了這個請求自動化,顯然下面提及的代碼無法正常工作因爲我需要一些輸入。
我不知道在哪裏包括soapenv:擡頭,我試圖內部請求將如示於下面的代碼(當前評論),但我正在爲#(NoMethodError)「未定義的方法`標題=」」。在savon請求中包含標題的位置?
在SOAP請求名稱中,我有一個附加屬性soapenv:encodingStyle =「http://schemas.xmlsoap.org/soap/encoding/」我應該在哪裏包含這個附加屬性。
client = Savon::Client.new do |wsdl| wsdl.document = "https://www.abc.com/webservices/RemotePublicGateway.cfc?wsdl" # this is not actual WSDL end testing_string = '[CONTROL] RequestID=83f6baab RequestTime=13:14:15 RequestDate=08/08/2013 GenerateLead=N Auto=Y' response = client.request :web, "InvokeComponent1" do #client.header = { } soap.body = { :PartnerName => 'ABC', :attributes! => { :PartnerName => { 'xsi:type' => "xsd:string" } }, :ComponentName => 'TestingServices', :attributes! => { :ComponentName => { 'xsi:type' => "xsd:string" } }, :arg1Value => testing_string, :attributes! => { :arg1Value => { 'xsi:type' => "xsd:string" } }, :RaUID => 'username', :attributes! => { :RaUID => { 'xsi:type' => "xsd:string" } }, :RaPW => 'password1', :attributes! => { :RaPW => { 'xsi:type' => "xsd:string" } }, :AgNO=> '12345', :attributes! => { :AgNO => { 'xsi:type' => "xsd:string" } } } end
薩翁1.0.0已被棄用的工作。你爲什麼使用它?你爲什麼在一個新項目中使用ruby 1.8.7? – 7stud
好吧,讓我試用更新版本的Savon,這個項目是已經存在的使用1.8.7的大型項目的一部分,我不能只是切換到這個項目的更新版本。 –