【发布时间】:2014-05-02 02:15:12
【问题描述】:
我使用 AFNetworking 作为我的应用程序的连接库。由于后端限制,我无法在应用程序启动时同时发送两个请求,因为服务器会识别 CookieTheftException (Grails)。在第一次成功连接后,我可以同时请求尽可能多的请求,但第一个请求必须是串行的。 我怎样才能做到这一点?
我想使用信号量,但我不能阻塞主线程。
编辑 1
我试图覆盖,但没有奏效。我认为操作队列不会等待一个请求完成(包括它的回调)来启动另一个。
- (void)enqueueHTTPRequestOperation:(AFHTTPRequestOperation *)operation
{
[self.operationQueue setMaxConcurrentOperationCount:1];
[super enqueueHTTPRequestOperation:operation];
}
编辑 2
我意识到 maxConcurrentOperation 有效,实际上一次执行 1 个操作。问题是已在没有服务器需要的 cookie 的情况下创建了入队的请求。
【问题讨论】:
标签: ios grails afnetworking