使用AFN的AFHTTPSessionManager 如何停止当前的请求

rollrock1987 2016-05-09 05:16:19
我的每一个HTTP请求都是调用下面的这个函数的,每个页面都会有多个这样的请求,我想在页面离开的时候停止调用,请问我应该如何操作?

+(void)requestWithUrl:(NSString* )url
param:(NSDictionary*)param
completionHandle:(NetworkFetcherCompletionHandle)completion
failureHandle:(NetworkFetcherErrorHandle)failure
{

AFHTTPSessionManager *session = [AFHTTPSessionManager manager];
session.requestSerializer.timeoutInterval = 60;// 请求超时时间是60秒
[session.requestSerializer setValue:@"" forHTTPHeaderField:@"lat"];
[session.requestSerializer setValue:@"" forHTTPHeaderField:@"lng"];


if (param != nil) { // 参数不为空的时候
[session POST:url parameters:param progress:^(NSProgress * _Nonnull uploadProgress) {

} success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
//DLog(@"data: %@",responseObject);
if (completion) {
completion(responseObject);
}

} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
if (failure) {
failure(error);
}
}];
}else{ // 参数为空的时候
[session POST:url parameters:param progress:^(NSProgress * _Nonnull uploadProgress) {

} success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
if (completion) {
completion(responseObject);
}
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
if (failure) {
failure(error);
}
}];
}

}
...全文
1835 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
不担心 2016-05-10
  • 打赏
  • 举报
回复
在你每次发起请求的时候都会返会一个NSURLSessionDataTask对象 所以你只要定义一个变量接收这个对象,然后通过这个对象来放弃请求 NSURLSessionDataTask *req= [session POST:url parameters:param progress:^(NSProgress * _Nonnull uploadProgress) { .....blabla } 然后需要取消的时候直接 [req cancel]; 就可以了
qq_29986437 2016-05-09
  • 打赏
  • 举报
回复
页面消失的方法里面写一个 cancel的方法 取消所有请求
huolong1237 2016-05-09
  • 打赏
  • 举报
回复
试下这个方法: - (NSURLSessionDataTask *)DELETE:(NSString *)URLString parameters:(id)parameters success:(void (^)(NSURLSessionDataTask *task, id responseObject))success failure:(void (^)(NSURLSessionDataTask *task, NSError *error))failure;

29,049

社区成员

发帖
与我相关
我的任务
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
  • iOS
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧