0

我正在使用 AFNetworking 运行 PHP 脚本,如下所示:

NSString *urlString = @"scriptURL.php";
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager POST:urlString parameters:params constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
    ...
} success:^(AFHTTPRequestOperation *operation, NSDictionary *responseObject) {
    NSLog(@"it worked!");
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    NSLog(@"error: %@", error.description);
}];

但是,脚本的某些部分需要更长的时间才能运行(发送一堆推送通知)。目前,这意味着在发送所有推送之前我不会收到响应对象,从而导致严重延迟。有没有办法强制返回响应对象,以便可以在后台运行更长、更耗时的操作?换句话说,我是否可以强制返回一个响应对象,以便它在我开始发送推送通知之前返回,这样 iOS 端就不需要在等待其他操作完成时停滞不前

4

1 回答 1

0

每个人可能都会告诉你,你想要实现的目标与 AFNetworking 无关,也与你的 iPhone 应用程序本身无关。基本上,如果您的 API 计算它必须做的事情(在这种情况下发送推送通知)花费的时间太长,AFNetworking 会忽略它,但只是在等待响应。

如果我猜对了,您自己开发 PHP 端,那么您可能想快速浏览一下如何在 PHP 中运行后台进程以实现您所说的。

有几个链接可以帮助您:

还有其他几个可能充其量满足您的需求。希望这能让你走上正确的道路。

于 2014-10-24T23:41:27.137 回答