ASIHttpRequest是一款及其强劲的HTTP訪问开源项目。让简单的API完毕复杂的功能,如:异步请求,队列请求,GZIP压缩。缓存,断点续传,进度跟踪,上传文件。HTTP认证。在新版本号中,还增加了Object-C闭包Block的支持,让我们的代码更加精简灵活。

依赖的5个库:

CFNetwork

SystemCorfiguration

MobileCoreServices

和libz、libxml2

ASIHttpRequest库内容能够到 Github 开源网去下载

一、ASIHttpRequest同步请求

//同步请求

- (void)synchronous:(NSURL *)url

{

ASIHTTPRequest *request = [ASIHTTPRequest
requestWithURL:url];

[request
setRequestMethod:@"GET"];

];

//设置请求头

//    [request setRequestHeaders:<#(NSMutableDictionary *)#>]

//设置cookies
保存到本地 设置登录password
下次能够不用登陆

//    [request setRequestCookies:<#(NSMutableArray *)#>]

//发送同步请求

[request startSynchronous];

NSError *error = request.error;

if(error == nil)

{

//请求下来的数据

NSData *data =  request.responseData;

UIImage *image = [UIImage
imageWithData:data];

self.image = image;

}

else

{

NSLog(@"请求网络出错: %@",error);

}

}

//异步请求

- (void)aSynchronous:(NSURL *)url

{

ASIHTTPRequest *request = [ASIHTTPRequest
requestWithURL:url];

[request
setRequestMethod:@"GET"];

];

//1.使用delegate

//    request.delegate = self;

//2.使用block

[request setCompletionBlock:^{

//网络请求完毕调用的block

NSData *data = request.responseData;

self.image = [UIImage
imageWithData:data];

}];

[request
setFailedBlock:^{

//网络请求失败调用的block

}];

//////////////////////////////////////////////

//发送异步请求

[request startAsynchronous];

}

#pragma mark - ASIHTTPRequestdelegate

- (void)requestFinished:(ASIHTTPRequest *)request

{

NSData *data = request.responseData;

self.image = [UIImage
imageWithData:data];

}

- (void)requestFailed:(ASIHTTPRequest *)request

{

NSLog(@"%@",request.error);

}

ASIHTTPRequest框架的简单使用的更多相关文章

  1. iOS网络编程-ASIHTTPRequest框架同步请求-备用

    在ASIHTTPRequest框架中与HTTP请求相关的类有:ASIHTTPRequest和ASIFormDataRequest,其中最常用的是ASIHTTPRequest,ASIFormDataRe ...

  2. ASIHTTPRequest框架使用总结系列之阿堂教程1(安装配置篇

    在前年,阿堂在<IOS开发系列之阿堂教程:玩转IPhone客户端和Web服务端交互(客户端)实践>一文中,对于ASIHTTPRequest框架有过一些介简单绍,具体链接地址见http:// ...

  3. 基于ThinkPHP框架的简单的后台管理系统

    版权声明:本文为博主原创文章,未经博主允许不得转载. 基于ThinkPHP框架的简单的后台管理系统 一个简单的后台管理系统,可能还不全面,可以自己改,有登录功能 实例如图:    

  4. PHP ORM框架与简单代码实现(转)

    对象关系映射(Object Relational Mapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术. 简单的说,ORM是通过使用描述对象和数据库之间映射的元数据 ...

  5. 初识服务发现及Consul框架的简单使用

    初识服务发现及Consul框架的简单使用   1.什么是服务发现? 服务发现组件记录了(大规模)分布式系统中所有服务的信息,人们或者其它服务可以据此找到这些服务. DNS 就是一个简单的例子. 当然, ...

  6. truffle框架的简单使用

    truffle 给大家介绍一下这个框架怎么使用,其实把这个框架就是你们看我之前有一个教程是教你们怎么用remix-ide来连接私有链,编译,配置合约,然后进行调用的,truffle其实就是把这个步骤放 ...

  7. python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用

    python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用 redispy安装安装及简单使用:https://github.com/andymccurdy/r ...

  8. 框架Thinkphp5 简单的实现行为 钩子 Hook

    这篇文章主要介绍了关于框架Thinkphp5 简单的实现行为 钩子 Hook,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 实现在一个方法开始和结束加入两个行为:api_init.ap ...

  9. Net系列框架-Dapper+简单三层架构

    Net系列框架-Dapper+简单三层架构 工作将近6年多了,工作中也陆陆续续学习和搭建了不少的框架,后续将按由浅入深的方式,整理出一些框架源码,所有框架源码本人都亲自调试通过,如果有问题,欢迎联系我 ...

随机推荐

  1. 画板(适用于手机、PC端)

    Html代码 <script type="text/javascript" src="jquery-1.9.1.min.js"></scrip ...

  2. Spring Boot (15) pom.xml设置

    继承spring-boot-parent 要成为一个spring boot项目,首先就必须在pom.xml中继承spring-boot-starter-parent,同时制定其版本 <paren ...

  3. spring框架搭建(一)

    spring介绍 spring是一个轻量级控制反转(IOC)和面向切面(AOP)的容器框架,它主要是为了解决企业应用开发复杂性而诞生的. 简单来说spring是一个一站式轻量级开源框架. IOC:In ...

  4. Android Activity has leaked window that was originally added

    今天调试程序时log中突然打印这样的错误,但是程序并没有crash,为了不放过一个错误,我决定调查一下. 当时是离开一个activity,然后提示是否退出此界面,接下来就打印此错误: - ::): A ...

  5. android黑科技系列——防自动抢红包外挂原理解析

    一.前言 春节过年发个红包本来就是为了讨个喜庆,朋友亲戚之间的关系交流,但是现在随着技术变革,抢红包插件越来越多,导致现在不太愿意发红包了,特别是在一个多人群里,潜水的非常多,但是丢个红包瞬间就没了, ...

  6. APP开发中的弹窗体系,UI设计师不能忽视的地方

    1. 弹窗的定义 弹窗分为模态弹窗和非模态弹窗两种. 弹窗分类 模态弹窗:很容易打断用户的操作行为,用户必须回应,否则不能进行其他操作. 非模态弹窗:不会影响用户的操作,用户可以不对其进行回应,非模态 ...

  7. SQL Server 一个简单的游标

    先看一下原表: DECLARE @id INT; DECLARE @name NVARCHAR(100); DECLARE c_department CURSOR FOR SELECT StuID, ...

  8. 修改withdraw 方法

    修改withdraw 方法 练习目标-使用有返回值的方法:在本练习里,将修改withdraw方法以返回一个布尔值来指示交易是否成功. 任务 1. 修改Account类 修改deposit 方法返回tr ...

  9. 【sqli-labs】 less3 GET - Error based - Single quotes with twist string (基于错误的GET单引号变形字符型注入)

    实质上和less1没有多大区别,看懂了一样走流程 提交参数 加单引号 http://localhost/sqli/Less-3/?id=1' 观察报错,看near 和 at 的引号之间内容 '1'') ...

  10. 我所理解的monad(4):函子(functor)是什么--可把范畴简单的看成高阶类型

    大致介绍了幺半群(monoid)后,我们重新回顾最初引用wadler(haskell委员会成员,把monad引入haskell的家伙)的那句话: 现在我们来解读这句话中包含的另一个概念:自函子(End ...