iOS开发简记(7):网络请求模块
主流的app都少不了跟服务器交互,网络请求是少不了的事情。
开源的网络请求库,有很多,比如:afnetworking、ytknetwork、ppnetworkhelper、asihttprequest,等等。
这里记录afnetworking的使用。
(1)安装afnetworking
跟使用qmuikit一样,小程以cocoapods的方式来引入afnetworking。
先用pod命令来查找afnetworking的最新版本:
pod search afnetworking
查找结果如下:
在podfile中,加入上图红框的内容,如下:
在podfile所在目录,执行:
pod install
安装完毕,在目标项目内可以看到afnetworking的身影,比如:
(2)使用afnetworking
对于afnetworking的使用,可以参考“官方”网站:https://github.com/afnetworking/afnetworking
这个网页的usage部分,详细介绍了afnetworking的使用(包括对网络状态的监听、上传下载、数据请求等等),还提供了演示代码,但是注意这里的介绍有可能跟不上afnetworking的版本(afnetworking一直在升级)。
小程使用afn的一个示例是这样的:
以上使用了manager的get方法,这个方法是异步请求,事实上,afn的请求都是异步的。
在某些场景,或在某些代码实现上,同步请求会更方便控制,为了使用同步请求,可以考虑这个开源项目:https://github.com/paulmelnikow/afnetworking-synchronous
同样可以用pod来引入这个同步afn的项目(比如对于afnetworking3.x版本):
pod 'afnetworking-synchronous/3.x'
然后按这个项目介绍的那样,进行同步请求:
最后提一下,对于请求返回的json数据,afn已经做了解析(一般解析成dictionary)。如果想单独处理json数据,可以使用mjexternsion这个开源库,可以这样安装:
pod 'mjextension', '~> 3.0.15.1'
使用上,请参考https://github.com/codermjlee/mjextension
本文演示的app的源码:
https://github.com/crazy0363/sound-show-zhiyin
本app已上架appstore,欢迎您使用。地址:https://itunes.apple.com/cn/app/%e5%a4%a9%e6%b6%af%e4%bd%95%e5%a4%84%e8%a7%85%e7%9f%a5%e9%9f%b3/id1439297254?mt=8&from=groupmessage&isappinstalled=0
或在appstore搜索“觅知音”或“天涯何处”,下载安装。
上一篇: D3.js的基础部分之数组的处理 集合(Set)(v3版本)
下一篇: 高级排序---希尔排序
推荐阅读
-
iOS开发中不合法的网络请求地址如何解决
-
iOS开发中不合法的网络请求地址如何解决
-
iOS开发中使用NSURLConnection类处理网络请求的方法
-
ios开发网络篇—Get请求和Post请求 - 转
-
iOS开发网络篇—发送GET和POST请求(使用NSURLSession) - 转
-
iOS开发简记(7):网络请求模块
-
Windows Phone 7(WP7)开发 网络操作(1) HttpWebRequest基本的GET请求
-
Windows Phone 7(WP7)开发 网络操作(2) HttpWebRequest GET请求队列
-
iOS开发中使用NSURLConnection类处理网络请求的方法
-
iOS开发网络篇—发送GET和POST请求(使用NSURLSession) - 转