【问题标题】:Forcing return of response object to AFNetworking强制将响应对象返回给 AFNetworking
【发布时间】:2014-10-24 23:24:53
【问题描述】:

我正在使用 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 端就不需要在等待其他操作完成时停滞不前

【问题讨论】:

    标签: php ios afnetworking afhttprequestoperation


    【解决方案1】:

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

    如果我没记错的话,你自己开发 PHP,所以你可能想快速浏览一下如何在 PHP 中运行后台进程来实现你所说的。

    有几个链接可能对您有所帮助:

    还有其他几个可能最适合您的需求。 希望这能让您走上正确的道路。

    【讨论】:

    • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。
    • 嗨,马特,明白了。但我只是不想在标题严格指 iOS 和 AFNetworking 时添加一堆 PHP 代码(尽管我认为这是解决这个问题的唯一方法)。
    猜你喜欢
    • 2014-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-03
    相关资源
    最近更新 更多