当JSON使用AFJSONRequestOperation失败时,如何获取responseString



当服务器无法发送有效的JSON响应时(fe.php echos一些临时变量或出现问题),我很难获得responseString。我使用AFNetwoking中的AFJSONRequestOperation,如下所示:

AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request
    success:^(NSURLRequest *request, NSHTTPURLResponse *response, id responseObject) {
        NSLog(@"object: %@", responseObject);
    }
    failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error, id responseString) {
        NSLog(@"failure: %@", responseString);
    }
];

responseString是故障的情况下总是nil。当我试图阅读文档时(http://cocoadocs.org/docsets/AFNetworking/1.3.1/Classes/AFJSONRequestOperation.html#//api/name/JSONRequestOperationWithRequest:success:failure:)我发现有人写过失败有三个论点(但实际上是四个,第四个总是零)。在这种情况下,有没有简单的方法可以将响应作为字符串?

如果responseStringnil,那么您可能没有从服务器接收到任何数据,或者数据无法用于创建有效的NSString对象。

根据对应于NSJSONSerialization错误的Cocoa error 3840的声音,我猜测服务器确实在发回一个空响应。

相关内容

  • 没有找到相关文章

最新更新