ASI

来源:互联网 发布:java方法名称 编辑:程序博客网 时间:2024/05/29 23:47

ASIHttpRequest

二、POST请求

.h

加头文件

#import "ASIFormDataRequest.h"

遵守协议

《ASIHTTPRequestDelegate》

.m

 ASIFormDataRequest * request = [[ASIFormDataRequest alloc]initWithURL:url];

        request.delegate = self;

        request.tag = 5000;

        [request responseStatusCode];//获取反馈信息,可以不用写

        [request startAsynchronous];


ASIHTTPRequest取消异步请求 (2012-10-22 11:59:27)

                                                                                                                                            转自     http://blog.sina.com.cn/software13

取消异步请求

    首先,同步请求是不能取消的。

    

    其次,不管是队列请求,还是简单的异步请求,全部调用[ request cancel ]来取消请求。取消的请求默认都会按请求失败处理,并调用请求失败delegate

    如果不想调用delegate方法,则设置:[ request clearDelegatesAndCancel];

    

    队列请求中需要注意的是,如果你取消了一个请求,队列会自动取消其它所有请求。如果只想取消一个请求,可以设置队列:[ queue setShouldCancelAllRequestsOnFailure:NO ]; 如果想明确取消所有请求:[ queue cancelAllOperations ];

    

    安全的内存回收建议

    

    request并没有retain你的delegate,所以在没有请求完的时候释放了此delegate,需要在dealloc方法里先取消所有请求,再释放请求实例,如:

    

    - (void)dealloc

    {

        [request clearDelegatesAndCancel];

        [request release];

        ...

        [super dealloc];

    }

ASIHTTPRequest提前终止异步请求  

[[ASIHTTPRequest sharedQueue] cancelAllOperations];

0 0
原创粉丝点击