在前年,阿堂在《IOS开发系列之阿堂教程:玩转IPhone客户端和Web服务端交互(客户端)实践》一文中,对于ASIHTTPRequest框架有过一些介简单绍,具体链接地址见http://blog.sina.com.cn/s/blog_4c925dca01011l1s.html。近来阿堂有点空闲时,决定再作些详细的系列介绍,因为这个框架确实还算是比较优秀的,有必要让更多的ios开发者了解使用。ASIHTTPRequest框架是基于Objective-c的优秀的第三方http框架,支持mac os x和iOS下的http开发,其技术支持网站是http://allseeing-i.com/ASIHTTPRequest/  。

     该框架具有如下优点
   1.支持将下载数据放在内存和应答http头。
   2.容易访问请求和应答http头。
   3.支持cookie。
   4.支持gzip请求或应答。
   5.支持缓存。
   6.支持同步或异步请求。
   7.使用https。
 
     ASIHTTPRequest框架不支持arc。如果在arc下开发,需要作些简单配置。
 
安装配置ASIHTTPRequest框架
 
1.首先从https://gighub.com/pokeb/asi-http-request/tree 下载ASIHTTPRequest框架,然后打开asi-http-request目录,选择如下图中红色框中的文件,然然将其添加到我们的iOS工程。
 

 
2.为了支持ASIHTTPRequest框架,我们的iOS工程中,还需要添加如下一些支持的类库或框架。见下图

3.编译我们的ios工程,看是否有错误。
如果我们ios工程是采用arc内存管理的话,一般会报arc Restrictions 类似的错误。意思ASIHTTPRequest框架不支持arc技术。
 
因为ASIHTTPRequest框架中的源代码中使用mrc(手动管理引用计数)。
解决方法: 
将ASIHTTPRequest框架中的这些源文件设置为不采用arc编译,编译参数是 -fno-objc-arc
具体如下图所示

经过上述三步操作后,我们的ios工程就可以完全支持和正常使用ASIHTTPRequest框架了。

ASIHTTPRequest框架使用总结系列之阿堂教程1(安装配置篇的更多相关文章

  1. ASIHTTPRequest框架使用总结系列之阿堂教程5(上传数据)

    在上篇文章中,阿堂和网友们分享了如何用ASIHTTPRequest框架下载数据的实例,本篇阿堂将数据介绍如何用ASIHTTPRequest框架上传数据的应用实例.       数据上传是通过ASIHT ...

  2. ASIHTTPRequest框架使用总结系列之阿堂教程4(下载数据)

    从本篇开始,阿堂准备进一步介绍ASIHTTPRequest框架下载数据和上传数据的实际应用.        为了实现多线程并发请求网络能力,ASIHTTPRequest被设计成 NSOperation ...

  3. ASIHTTPRequest框架使用总结系列之阿堂教程3(异步请求)

    在上一节中,阿堂和网友们分享了ASIHTTPRequest框架对于get,post的同步请求方式.很显然,如果网速比较慢,查询的时候会一直很黑屏,直到请求结束界面才出现结果,这样用户体验肯定很不好了. ...

  4. ASIHTTPRequest框架使用总结系列之阿堂教程2(同步请求)

    从本篇开始,阿堂结合一些具体代码来说明.在ASIHTTPRequest框架中,与http请求相关的类有ASIHTTPRequest  和 ASIFormDataRequest,其中最常用的是 ASIH ...

  5. mysql安装简单教程(自动安装/配置安装)

    mysql安装简单教程(自动安装/配置安装) 1.1前言: 由于特殊原因,在最近2-3个月里mysql真是安装了无数遍,每次安装都要上网找教程,每个教程基本都不一样,因此还是自己写下来比较好,毕竟自己 ...

  6. IOS开发系列之阿堂教程:玩转IPhone客户端和Web服务端交互(客户端)实践

    说到ios的应用开发,我们不能不提到web server服务端,如果没有服务端的支持,ios应用开发就没有多大意义了,因为从事过手机开发的朋友都知道(Android也一样),大量复杂业务的处理和数据库 ...

  7. mycat数据库集群系列之mycat读写分离安装配置

    最近在梳理数据库集群的相关操作,现在花点时间整理一下关于mysql数据库集群的操作总结,恰好你又在看这一块,供一份参考.本次系列终结大概包括以下内容:多数据库安装.mycat部署安装.数据库之读写分离 ...

  8. 在Debian系列Linux系统Ubuntu上安装配置yum的试验

    用习惯了Red Hat系统的都知道我们习惯于三种安装方式:一种是rpm包的方式安装,一种就是tar包的方式来安装,还有一种方式就是yum源的安装. 首先rpm包的用法,我们一般是在Red Hat光驱里 ...

  9. mysql安装教程,mysql安装配置教程

    MySQL的安装教程 一.MYSQL的安装 首先登入官网下载mysql的安装包,官网地址:https://dev.mysql.com/downloads/mysql/ 一般下载这个就好,现在的最新版本 ...

随机推荐

  1. HDU 4189 Cybercrime Donut Investigation 线段树+思路

    参考:http://www.cnblogs.com/slon/archive/2012/03/30/2426104.html 题意:给一个有n个点的点集,有q个询问,每个询问询问一个点p,求与p曼哈顿 ...

  2. 贪吃蛇StringBuilder 和 定时器

    ConsoleKeyInfo info = Console.ReadKey(); while (true) { if (info.Key == ConsoleKey.UpArrow)//只能输入一次但 ...

  3. nginx限速白名单配置

    在<nginx限制连接数ngx_http_limit_conn_module模块>和<nginx限制请求数ngx_http_limit_req_module模块>中会对所有的I ...

  4. Vuex, api, SSR, module

    vuex https://vuex.vuejs.org/zh/guide/actions.html 单向数据流 单例模式 & 多个组件共享状态 State & 状态注入 Vue.use ...

  5. iOS大神班笔记02-模仿苹果创建单例

    首先我们得要知道苹果是如何实现单例的:1.不能外界调用alloc,一调用就崩掉,其实就是抛异常(类内部第一次调用alloc就不崩溃,其他都崩溃). 2.提供一个方法给外界获取单例.  3.内部创建一次 ...

  6. git可视化工具相关资源

    TortoiseGit下载及其使用 TortoiseGit是一个开源项目,熟悉svn版本控制系统的小伙伴可能知道TorToisesvn.  下载:https://tortoisegit.org/dow ...

  7. SJCL:斯坦福大学JS加密库

    斯坦福大学Javascript加密库简称SJCL,是一个由斯坦福大学计算机安全实验室创立的项目,旨在创建一个安全.快速.短小精悍.易使用.跨浏览器的JavaScript加密库.(斯坦福大学下载地址:h ...

  8. 单位转换类UnitUtil2

    package com.jlb.scan.util; import java.math.BigDecimal; import java.text.DecimalFormat; import com.j ...

  9. classes could not be found: - android.support.v7.internal.app.WindowDecorActionBar问题的解决方法

    转载至----http://my.oschina.net/u/2425146/blog/546649?fromerr=aDYrFDVx.仅作个人收藏使用,有转载的朋友请连续原作者,谢谢 刚刚进入stu ...

  10. Centos7下yum安装mongodb

    简介 MongoDB 是一个基于分布式 文件存储的NoSQL数据库 由C++语言编写,运行稳定,性能高 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案 查看官方网站 MongoDB特点 模式自 ...