AFNetworking 及其响应 (JSON)。简单的查一个值行不通?
AFNetworking and its Repsonse (JSON). Simple check a value does not work?
我对 AFNetworking 及其响应有疑问。
对你来说,这会很容易解决?! :-D
我收到一个 json 的响应,然后我使用响应的值。
日志中的响应如下所示:
{
data = {
name = john;
newsletter = 1;
};
message = "Registered successfully";
status = 200;
}
我使用名称值的代码如下所示:
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSDictionary *parameters = @{@"username": mailTextField.text, @"password": passwordTextField.text, @"token": appToken, @"type": @"ios", @"action": @"register"};
[manager POST:appURLPUSH parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
self.posts = (NSDictionary *)responseObject;
self.post = self.posts[@"data"][@"name"];
signNameLabel.text = (NSString *)self.post;
signMailLabel.text = mailTextField.text;
NSArray *menu = nil;
if ((NSInteger)self.posts[@"data"][@"newsletter"] == 1) {
NSLog(@"ITS ONE!");
menu = @[@"newsletterunregister", @"signout"];
} else {
NSLog(@"MUST BE ZERO!");
menu = @[@"newsletterregister", @"signout"];
}
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
// Error handling
}];
signNameLabel.text = (NSString *)self.post;作品。
我的问题是 if ((NSInteger)self.posts[@"data"][@"newsletter"] == 1) { 行。它永远不会成真。为什么?我尝试了一些方法,比如将它转换为 NSString,但它也没有用。
那么我如何检查项目 "newsletter" 是否为 1?
非常感谢。
泰坦
试试这个代码
NSInteger newsletter = [self.posts[@"data"][@"newsletter"] IntegerValue];
if (newsletter == 1) {
NSLog(@"ITS ONE!");
menu = @[@"newsletterunregister", @"signout"];
} else {
NSLog(@"MUST BE ZERO!");
menu = @[@"newsletterregister", @"signout"];
}
我对 AFNetworking 及其响应有疑问。 对你来说,这会很容易解决?! :-D
我收到一个 json 的响应,然后我使用响应的值。 日志中的响应如下所示:
{
data = {
name = john;
newsletter = 1;
};
message = "Registered successfully";
status = 200;
}
我使用名称值的代码如下所示:
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSDictionary *parameters = @{@"username": mailTextField.text, @"password": passwordTextField.text, @"token": appToken, @"type": @"ios", @"action": @"register"};
[manager POST:appURLPUSH parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
self.posts = (NSDictionary *)responseObject;
self.post = self.posts[@"data"][@"name"];
signNameLabel.text = (NSString *)self.post;
signMailLabel.text = mailTextField.text;
NSArray *menu = nil;
if ((NSInteger)self.posts[@"data"][@"newsletter"] == 1) {
NSLog(@"ITS ONE!");
menu = @[@"newsletterunregister", @"signout"];
} else {
NSLog(@"MUST BE ZERO!");
menu = @[@"newsletterregister", @"signout"];
}
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
// Error handling
}];
signNameLabel.text = (NSString *)self.post;作品。 我的问题是 if ((NSInteger)self.posts[@"data"][@"newsletter"] == 1) { 行。它永远不会成真。为什么?我尝试了一些方法,比如将它转换为 NSString,但它也没有用。 那么我如何检查项目 "newsletter" 是否为 1?
非常感谢。 泰坦
试试这个代码
NSInteger newsletter = [self.posts[@"data"][@"newsletter"] IntegerValue];
if (newsletter == 1) {
NSLog(@"ITS ONE!");
menu = @[@"newsletterunregister", @"signout"];
} else {
NSLog(@"MUST BE ZERO!");
menu = @[@"newsletterregister", @"signout"];
}