2011-02-24 85 views
0

我正在從這樣的.NET網絡服務器獲取數據。不同的響應來自.net網絡服務器使用NSUrlrequest

<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><GenericAndroidMethodResponse xmlns="Mortgage"><GenericAndroidMethodResult>&lt;NewDataSet&gt; 
    &lt;Table&gt; 
    &lt;LoanOfficerID&gt;3581&lt;/LoanOfficerID&gt; 
    &lt;FirstName&gt;Venkat&lt;/FirstName&gt; 
    &lt;LastName&gt;Sreenu&lt;/LastName&gt; 
    &lt;Address1&gt;d&lt;/Address1&gt; 
    &lt;City&gt;d&lt;/City&gt; 
    &lt;State&gt;Alabama&lt;/State&gt; 
    &lt;WorkPhone&gt;19999999999&lt;/WorkPhone&gt; 
    &lt;Country&gt;United States&lt;/Country&gt; 
    &lt;EmailAddress&gt;[email protected]&lt;/EmailAddress&gt; 
    &lt;companyName&gt;ensisinfo&lt;/companyName&gt; 
    &lt;CompanyURL&gt;www.ensisinfo.com&lt;/CompanyURL&gt; 
    &lt;/Table&gt; 
&lt;/NewDataSet&gt;</GenericAndroidMethodResult></GenericAndroidMethodResponse></soap:Body></soap:Envelope> 

但我在瀏覽器中通過傳遞XML參數和方法名稱測試我越來越像這樣。

<NewDataSet> <Table> <LoanOfficerID>3581</LoanOfficerID> <FirstName>Venkat</FirstName> <LastName>Sreenu</LastName> <Address1>d</Address1> <City>d</City> <State>Alabama</State> <WorkPhone>19999999999</WorkPhone> <Country>United States</Country> <EmailAddress>[email protected]</EmailAddress> <companyName>ensisinfo</companyName> <CompanyURL>www.ensisinfo.com</CompanyURL> </Table> </NewDataSet> 

我使用的NSURLRequest

NSURL * URL = [NSURL URLWithString:@ 「http://173.31.193.92/MobileGenericWebservice/GenericWebService.asmx」]; NSMutableURLRequest * theRequest = [NSMutableURLRequest requestWithURL:url]; NSString * msgLength = [NSString stringWithFormat:@「%d」,[soapMessage length]];

[theRequest addValue: @"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"]; 
[theRequest addValue: @"Mortgage/GenericAndroidMethod" forHTTPHeaderField:@"SOAPAction"]; 
[theRequest addValue: msgLength forHTTPHeaderField:@"Content-Length"]; 
[theRequest setHTTPMethod:@"POST"]; 
[theRequest setHTTPBody: [soapMessage dataUsingEncoding:NSUTF8StringEncoding]]; 

爲什麼我變得這樣。

任何人都可以幫助我。

回答

1

在XML中都是那些&lt;和其他代碼可見像你的例子?
如果他們那麼整個元素只是被解析爲一個巨大的字符串,在<GenericAndroidMethodResult>節點。

+0

然後我該如何解決它,我需要個人,我如何轉換這些&lt; – MaheshBabu 2011-02-24 11:09:33

+0

有一個NSString方法「stringByReplacingOccurencesofString」,可以讓你修改符號。你可以編寫一個函數來檢查字符串並「修復」它。然後你可以解析這個字符串。或者您可以掃描字符串並提取出您需要的數據。 – Walter 2011-02-24 12:35:41

+0

我嘗試stringByReplacingOccurencesofString但沒有變化 – MaheshBabu 2011-02-25 05:25:59

0

告訴你的.NET人解決它。你得到的不是一個有效的XML。