0
AFNetworking POST 요청의 응답을 기반으로 값을 반환하는 함수를 만들려고합니다.AFNetworking 응답을 기반으로 한 반환 값
그러나 함수를 비동기 적이므로 응답을 실제로 받기 전에 값이 반환되므로이를 수행하는 방법을 알 수 없습니다.
int didLogin;
__block NSString *response;
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"];
NSDictionary *parameters = @{@"username":username, @"password":password};
[manager POST:loginUrl parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject) {
//json "response" object from server response
response = [responseObject objectForKey:@"response"];
NSLog(@"Response: %@", response);
[HUD hide:YES];
[HUD removeFromSuperViewOnHide];
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
[HUD hide:YES];
[HUD removeFromSuperViewOnHide];
NSLog(@"Login Error: %@", error);
}];
if ([response compare:@"1"] == NSOrderedSame || [response compare:@"2"] == NSOrderedSame)
{
//successful login/1-new device/2-existing device
didLogin = 1;
}
else if ([response compare:@"0"] == NSOrderedSame)
{
//unsuccessful login/invalid password
didLogin = 0;
}
else{
//unsuccessful login
didLogin = 2;
}
어떤 시점에서 로그인 했습니까?
이 작업을 수행 할 수있는 방법이 있습니까, 아니면 동기 요청을 사용해야합니까?
콜백을 설정하는 방법을 알아 내는데 1 시간 정도 걸렸지 만 모든 것이 작동한다고 생각합니다. 감사! – Justin