【发布时间】:2026-01-29 22:55:01
【问题描述】:
我有一个登录视图。当用户单击“登录”按钮时,应用程序将验证帐户,然后决定是否进行 segue。但是,POST 请求是异步的。
- (BOOL)shouldPerformSegueWithIdentifier:(NSString *)identifier sender:(id)sender
在我从服务器获取某些内容之前执行。这是我的代码:
- (void)isAuthenticaionConfirmed
{
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSDictionary *parameters = @{@"account":self.studentsNumber.text,
@"password":self.passwordToJW.text};
[manager POST:checkAutenticationURL parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSLog(@"JSON: %@", responseObject);
[self parseDictionary:responseObject];
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"Error: %@", error);
[self showAlert:@"3"];
}];
}
- (void)parseDictionary: (NSDictionary *)dictionary
{
NSString *errorInfo = dictionary[@"err"];
if ([errorInfo isEqualToString:@"subsequent request failed"]) {
[self showAlert:@"3"];
} else if ([errorInfo isEqualToString:@"login failed"]) {
[self showAlert:@"2"];
} else {
_name = dictionary[@"name"];
}
}
这里是segue相关的代码
- (BOOL)shouldPerformSegueWithIdentifier:(NSString *)identifier sender:(id)sender
{
if (_name) {
return YES;
} else {
return NO;
}
}
这里的_name是用户使用正确帐号和密码时的JSON结果。
【问题讨论】:
标签: ios objective-c iphone json