2016-12-27 13 views
2

を対象としています。私は目的CとIOSに新しく、URLに値を投稿しようとしていますレスポンス。'AFHTTPSessionManager'の表示されない@interfaceは、セレクタのPOST:parameters:progress:success:failure: '

が、私はこのエラーに

/ユーザ/デスクトップは/ MyIOSApps /チャットシステムを抱えている、ので、私は私のプロジェクトをコンパイルすることはできません/チャットシステム/ SignInVC.m:92:14:見えない ':パラメータ:進行:成功:失敗: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" 
'AFHTTPSessionManager' の@interfaceは、セレクタを宣言します

の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ようこそメイト:) –

関連する問題