无法保存 AFNetworking responseObject

Unable to Save AFNetworking responseObject

我正在使用 AFNetworking 调用 Web 服务并将 return 数据保存在 NSDictionary 对象中。但是其中没有存储任何内容,即使数据已成功登录 NSLog().

这是我的词典:

@property (strong, nonatomic) NSDictionary *newsItems;

这是我的代码:

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
    NSDictionary *parameters = @{@"key": @"keyy", @"q": @"ads" };
    [manager POST:BaseURLString parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
        self.newsItems = (NSDictionary *) responseObject;
        NSLog(@"JSON: %@", responseObject);
    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        NSLog(@"Error: %@", error);
    }];

您需要声明 NSArray 而不是 NSDictionary,如下所示:

@property (strong, nonatomic) NSArray *newsItems;

并像下面这样分配 responseObject

self.newsItems = (NSArray *) responseObject;

希望对您有所帮助。

首先,使用以下行检查您是否从 Web 服务获得任何响应:

NSLog(@"RESPONSE : %@", operation.responseString);

其次,如果您的 Web 服务应该 return 一个字典数组,那么您应该声明一个数组而不是字典。

@property (strong, nonatomic) NSArray *newsItems;

而不是

@property (strong, nonatomic) NSDictionary *newsItems;