2016-12-27 86 views
2

我是新來的目標c和IOS,我試圖發佈一些值到一個URL,並試圖獲得響應。沒有可見@interface爲'AFHTTPSessionManager'聲明選擇'POST:參數:進展:成功:失敗:'

,而是因爲,我遇到這個錯誤

/用戶/桌面/ MyIOSApps /聊天系統,我不能編譯我的項目/聊天系統/ SignInVC.m:92:14:無 可見@interface爲 'AFHTTPSessionManager' 宣佈選擇 'POST:參數:進展:成功:失敗:'

進口

#import "SignInVC.h" 
#import <QuartzCore/QuartzCore.h> 
#import "ApplicationEnvironmentURL.h" 
#import "Reachability.h" 
#import "AFNetworking/AFNetworking.h" 
#import "MBProgressHUD/MBProgressHUD.h" 
#import "AppDelegate.h" 

Objective-C代碼

- (void)submitLoginRequest:(NSString *)email password:(NSString *)password { 

    AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]]; 
    manager.requestSerializer = [AFJSONRequestSerializer serializer]; 

    NSMutableDictionary *dict = [[NSMutableDictionary alloc] init]; 
    [dict setValue:email forKey:@"Email"]; 
    [dict setValue:password forKey:@"Password"]; 

    NSLog(@"Login dicxtionary : %@", dict); 
    MBProgressHUD *hud; 
    hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES]; 
    hud.label.text = @"Please wait. Logging in..."; 

    [hud showAnimated:YES]; 


    // send user login data to hosting via AFHTTP Async Request in AFNetworking 
    [manager POST:BASEURL parameters:dict progress:nil success:^(NSURLSessionTask *task, id responseObject) { 

     [hud hideAnimated:YES]; 
     // Login response validation 
     if (responseObject == [NSNull null]) { 
      [self showMessage:@"Login Failed" Message:@"Unable to login. Please try again!"]; 
     }else { 
      //NSError *error = nil; 
      NSLog(@"response type : %@", NSStringFromClass([responseObject class])); 
      //NSDictionary *response = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:&error]; 
      [self checkResultValue:(NSDictionary *)responseObject]; 
     } 

    } failure:^(NSURLSessionTask *task, NSError *error) { 

     NSLog(@"AFHTTPSession Failure : %@", [error localizedDescription]); 
    }]; 

} 

有人可以幫我解決這個問題。 TNX。

回答

5

您正在查找的方法是POST:parameters:success:failure:。因此,只需從方法調用中刪除progress:nil即可。整個方法調用如下所示。

[manager POST:BASEURL parameters:dict success:^(NSURLSessionTask *task, id responseObject) { 

     [hud hideAnimated:YES]; 
     // Login response validation 
     if (responseObject == [NSNull null]) { 
      [self showMessage:@"Login Failed" Message:@"Unable to login. Please try again!"]; 
     }else { 
      //NSError *error = nil; 
      NSLog(@"response type : %@", NSStringFromClass([responseObject class])); 
      //NSDictionary *response = [NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:&error]; 
      [self checkResultValue:(NSDictionary *)responseObject]; 
     } 

    } failure:^(NSURLSessionTask *task, NSError *error) { 

     NSLog(@"AFHTTPSession Failure : %@", [error localizedDescription]); 
    }]; 
+1

抱歉,延遲,它工作正常。 TNX。 –

+0

@SathyaBaman歡迎伴侶:) –

相關問題