ios调用webservice整理 c 调用webservice

学iphone开发有一段时间了,对于我这个新手来说,学习过程中,遇到不少问题,尤其是webservice的调用一直困扰了很久,赶在光棍前夕之迹,谈谈个人在webservice方面遇到的问题以及解决方案~~跟大家分享一下,对于那些高手来说可以略过~~

也不知道这是人生中的第几个光棍节了,没有妹子,很纠结,没有遇到对的人,在爱情的等待中渐渐的发霉~~~~~~~~

在这里也祝单身的男银、女银们,在光棍节脱"光"~~~~废话不多说~~切入正题

一、简述

要调用webservice你想到的是什么?

(1)写一个调用webservice的类(可以自已写,也可以下载第三方的类库)

(2)对webservice返回的xml解析(ios自带的xml解析真的很烦)

我在网上度娘了很网,都是看到有些人,要么只提供webservice的类,简单的说明一下,对于返回的数据xml,一字不提~~~用起他们写的类来,真的很冒烟啊~~~~,网上找到的一些答案,我觉得很奇怪,大牛们经常会写一句不明不白的话,要写就写清楚,否则干脆不要写~~~让人希望又失望~~我不觉得这样有多牛B。。。反而我更喜欢把复杂的事件简单化~~~

我个人在调用webservice时遇到几个问题:

a.webservice的命名空间问题?

webservice默认的命名空间是:http://tempuri.org/

我刚开始用得好好的,后来报soapAction不识别http://tempuri.org/~~~~那天花了一上午才找出这个错,原来有人改动了webservice的默认命名空间~~~我去你大爷的,改了命名空间,也不通知我,害我瞎折腾~~

b.xml如何解析问题?

本来是想用ios自带的类去解析xml的,网上查了一下,看别人写了一大片,脑门一片大汗,满脸黑线~~~,后来我用的是google写的GDataXML这个类库,还不错~~~,不过对于那些xml有命名空间的如何读取,各种坛子去提问,至今还没有人正确解答我~~~难道天朝就没有人知道吗?我失望至极,后来还是有如神助般醍醐灌顶~~~自已解决了,阿门~~~~

c.异步调用时发生400错误?

这个问题搞得我,头脑出现乱码,神经也被打茄了,你们猜这是啥原因~~~~

soap原本要传递的信息是这样:

<a>XXX</a><b>XXXX</b>

我把它传递参数颠倒过来了,变成这样:

<b>XXX</b><a>XXX</a>

发现问题后,我傻楞般的笑了~~~~

二、类的简要说明

(1)webservice(一个是使用NSURLConnection写的类,还有一个是ASIHttpRequest写的webservice调用类)

a.同步调用

b.异步调用

c.返回数据的处理

soap调用返回的数据经常放在:<webservice方法名Result>XXX</webservice方法名Result>中,我在webservice调用中已经直接提取出来了~~~提取出来的内容还是一个xml,这段内容的处理,我单独写在xml解析类里面

(2)xml解析类

1.读取<方法名Result>XXX</方法名Result>的内容

2.遍历xml的所有内容返回数组

三、使用配置

(1)使用NSURLConnection写的webservice调用类,类名叫:WebServices.h

包含的文件如下:

a.AppConfigure.h文件的配置:

b.googleGDataXml配置如下:

step1.先添加libxml2.dylib类库,不要告诉我这个都不会,拉去面壁~~~

step2.操作如下图所示

(2)借助ASIHttpRequest写的webservice调用类,类名叫:ServiceHelper.h

跟(1)的配置一样,这里就不再重复说明,ASIHttpRequest要多添加几个类库,如下图所示

四、文件下载

(1)NSURLConnection类写的webservice调用类的所有文件下载

http://dl.vmall.com/c0cld6ey99[注:请下载demo里面的最新版本,有调整]

(2)ASIHttpRequest类写的webservice调用类的所有文件下载

http://dl.vmall.com/c0gx4evjva[注:请下载demo里面的最新版本,有调整]

五、demo下载demo下载地址:http://dl.vmall.com/c016bva6aw最后祝大家~~~~光棍快乐~~~~~努力脱光~~~~~~~~~~~~~~~~
ios调用webservice整理 c 调用webservice

  

爱华网本文地址 » http://www.aihuau.com/a/25101010/22750.html

更多阅读

Word2010怎样调用绘图工具 vs2010调用matlab绘图

Word2010怎样调用绘图工具——简介Microsoft office 2010 版本如果增添了不少新功能,如果能熟练掌握的话,其实对工作学习会带来更多的便捷性,很多人熟悉了2003版本,对于一些工具想在2010版本上实现,显得有些手忙脚乱,不知如何是好。这不,今

如何在html中调用js代码 html5如何调用js文件

如何在html中调用js代码——简介js代码即为javascript代码,可直接在客户端解释执行,在html中调用js代码的方法主要有两种:一、将javascript直接写在html文件中,然后在html中调用js函数等;二、将js代码写一个文件中,然后在html中引用该文件

ios地图线路导航 ios 调用高德地图导航

ios可以调用自带的googlemap实现路径导航,方法非常简单,只需要告诉系统出发点和目的地,代码实现方法如下:[[UIApplicationsharedApplication] openURL:[NSURL URLWithString:[NSStringstring

动易CMS怎样调用相关文章? 帝国cms相关文章调用

  动易cms怎样调用相关性文章?动易cms没有像织梦CMS那么方便的标签,直接就可以调用出相关性文章来,在网上看到一种可以让动易cms调用相关性的文章,在这里给大家分享一下。  {$CorrelativeArticle(ArticleNum,TitleLen,OrderType,O

使用instruments分析ios应用的memoryleak c memory leak

一、前提条件:在真机上装有**应用。1、 因为虚拟机内存足够,所以测试中使用真机;2、因为IOS开发者账号只申请一个,给开发组使用了,我们没法通过Xcode自动安装程序到手机上,所以用itools进行安装,然后再连接到Xcode上。3、如果通过itool

声明:《ios调用webservice整理 c 调用webservice》为网友淡忘那段情分享!如侵犯到您的合法权益请联系我们删除