如何写一个使用Web Service的IOS应用
2015-02-04 · 知道合伙人数码行家
知道合伙人数码行家
向TA提问 私信TA
一、 前期准备工作:
需要使用的第三方库:
接下来就开始创建项目并导入:
1.开启Xcode创建一个项目,项目类型选择Single View Application。
2.创建三个Group,并导入上述三个库。
JSON:将JSON\Classes目录的文件托入刚才创建的JSON GROUP。
ASIHTTPRequest:将ASIHTTPRequest\Classes目录的所有文件拖入创建的ASIHTTPRequest GROUP(注意,只要当前目录的文件,CloudFiles之类的目录不需要)
ASIHTTPRequest\External\Reachability这里的文件也要加进来
MBProgressHUD:将MBProgressHUD.m和MBProgressHUD.h拖入MBProgressHUD GROUP
以上三个操作,拖入的时候,记得勾选Copy items into destination group’s folder (if needed)选项,意思是把目录复制到你的项目中,而不是只引用。
3.导入一些必要的frameworks:点击左侧导航栏中你的项目->选中target->再选择build phases栏0->Link Binary with Libraries。点击+按钮,搜索CFNetwork.framework and SystemConfiguration.framework,MobileCoreServices.framework, and libz.1.2.3.dylib四个库。
以上三个大步骤完成后,点击编译。完成第一个阶段。
二、实现Interface
创建UI: 1.label
2.textfield
3.textview
三、与WebService交互
我们的Web Service需要三个参数:
rw_app_id: 应用的唯一标识号. If you’ve been following along with the previous tutorial, there should be only one entry so far, App ID #1.
code: The code to attempt to redeem. This should be a string that’s entered by the user.
device_id: The device ID that is attempting to redeem this code. We can get this with an easy API call
我们需要使用POST机制请求WebService。ASIHTTPRequest将使这一过程变得很便捷。
1.创建一个ASIFormDataRequest实例与URL
2.使用setPostValue方法指定各个参数
3.设置viewcontroller为request的delegate,之后调用startAsynchronous来发起异步请求
4.当请求完毕后,requestFinished或者requestFailed会被回调
5.requestFinished无论webservice相应一个错误的代码,或者正确响应,都会被调用,所以在这个函数里要检查请求成功或者失败
6.如果一切顺利,再解析收到的JSON数据
2024-12-11 广告