gpt4 book ai didi

ios - 只需要在AFNetworking中执行一个HTTP操作,取消之前的一个

转载 作者:行者123 更新时间:2023-11-29 02:16:25 26 4
gpt4 key购买 nike

我使用 AFNetworking 框架,需要为我的网络请求实现这个逻辑:

  • 只有一个请求正在执行;
  • 如果新请求准备就绪,我需要取消之前的请求并执行新请求。

我看到 AFHTTPRequestOperation 是一个 NSOperation 子类,所以我可以编写自己的请求管理器,但正如我所见,AFHTTPRequestOperationManager 在框架。我只发现我可以在这里做一个并发队列,这样我的请求就会一个接一个地执行。我可以使用 AFHTTPRequestOperationManager 获得所描述的行为吗?谢谢!

最佳答案

我也会把这个作为答案。因此,我们的想法是执行以下操作:

-为 AFNetworkingOperation 创建属性:

@property AFHTTPRequestOperation *post;

-在你的初始值设定项中:

self.post = nil;

-在调用请求的函数中:

if(self.post){
[post cancel];
}

-你需要稍后分配 self.post:

self.post = [manager POST:nil parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
self.post = nil;
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
// error handling.
}];

关于ios - 只需要在AFNetworking中执行一个HTTP操作,取消之前的一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28694608/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com