學iphone開發有一段時間了,對於我這個新手來說,學習過程中,遇到不少問題,尤其是webservice的呼叫一直困擾了很久,趕在光棍前夕之跡,談談個人在webservice方面遇到的問題以及解決方案~~跟大家分享一下,對於那些高手來說可以略過~~
也不知道這是人生中的第幾個光棍節了,沒有妹子,很糾結,沒有遇到對的人,在愛情的等待中漸漸的發霉~~~~~~~~
在這裡也祝單身的男銀、女銀們,在光棍節脫"光"~~~~廢話不多說~~切入正題
一、簡述
要呼叫webservice你想到的是什麼?
(2)對webservice返回的xml解析(ios自帶的xml解析真的很煩)
我在網上度娘了很網,都是看到有些人,要麼只提供webservice的類,簡單的說明一下,對於返回的資料xml,一字不提~~~用起他們寫的類來,真的很冒煙啊~~~~,網上找到的一些答案,我覺得很奇怪,大牛們經常會寫一句不明不白的話,要寫就寫清楚,否則乾脆不要寫~~~讓人希望又失望~~我不覺得這樣有多牛b。。。反而我更喜歡把複雜的事件簡單化~~~
我個人在呼叫webservice時遇到幾個問題:
a.webservice的命名空間問題?
webservice預設的命名空間是:
我剛開始用得好好的,後來報soapaction不識別~~~~那天花了一上午才找出這個錯,原來有人改動了webservice的預設命名空間~~~我去你大爺的,改了命名空間,也不通知我,害我瞎折騰~~
b.xml如何解析問題?
本來是想用ios自帶的類去解析xml的,網上查了一下,看別人寫了一大片,腦門一片大汗,滿臉黑線~~~,後來我用的是google寫的gdataxml這個類庫,還不錯~~~,不過對於那些xml有命名空間的如何讀取,各種罈子去提問,至今還沒有人正確解答我~~~難道**就沒有人知道嗎?我失望至極,後來還是有如神助般醍醐灌頂~~~自已解決了,阿門~~~~
c.非同步呼叫時發生400錯誤?
這個問題搞得我,頭腦出現亂碼,神經也被打茄了,你們猜這是啥原因~~~~
soap原本要傳遞的資訊是這樣:
******x
我把它傳遞引數顛倒過來了,變成這樣:
******
發現問題後,我傻楞般的笑了~~~~
二、類的簡要說明
(1)webservice(乙個是使用nsurlconnection寫的類,還有乙個是asihttprequest寫的webservice呼叫類)
a.同步呼叫
b.非同步呼叫
c.返回資料的處理
soap呼叫返回的資料經常放在:***中,我在webservice呼叫中已經直接提取出來了~~~提取出來的內容還是乙個xml,這段內容的處理,我單獨寫在xml解析類裡面
(2)xml解析類
1.讀取《方法名result>***的內容
2.遍歷xml的所有內容返回陣列
三、使用配置
(1)使用nsurlconnection寫的webservice呼叫類,類名叫:webservices.h
包含的檔案如下:
b.google gdataxml配置如下:
step1.先新增libxml2.dylib類庫,不要告訴我這個都不會,拉去面壁~~~
step2.操作如下圖所示
(2)借助asihttprequest寫的webservice呼叫類,類名叫:servicehelper.h
跟(1)的配置一樣,這裡就不再重複說明,asihttprequest要多新增幾個類庫,如下圖所示
ios呼叫webservice整理
學iphone開發有一段時間了,對於我這個新手來說,學習過程中,遇到不少問題,尤其是webservice的呼叫一直困擾了很久,趕在光棍前夕之跡,談談個人在webservice方面遇到的問題以及解決方案 跟大家分享一下,對於那些高手來說可以略過 也不知道這是人生中的第幾個光棍節了,沒有妹子,很糾結,沒...
iOS 呼叫Webservice介面
1.寫請求體 寫請求體的時候要注意soap的版本,有的是1.1,有的是1.2 可以去檢視pc上的請求體資料參照部落格中的寫法修改 2.進行請求 將下面部落格中的 整理下複製貼上就好 3.請求完成,解析xml,轉為字典型別,呼叫下面的方法 nsdictionary dictionaryforxmlst...
iOS 開發之 Web Service 呼叫
以下變更在 h 檔案中宣告 nsmutabledata webdata nsmutablestring soapreply nsurlconnection conn nsxmlparser xmlparser bool elementfound 以下在 m 中實現 validate user id ...