2016-03-29 8 views
0

私は以下のパラメータを指定のURLに送信するためにこのコードを記述します。しかし、それが表示されている:'NSInvalidArgumentException'、理由:URLにパラメータを送信中にこのエラーを示す 'data parameter is nil'

'NSInvalidArgumentException'、理由: 'データパラメータがnilである'

は、どのように私はそれが正しいにする必要がありますか?

NSMutableDictionary *request = [[NSMutableDictionary alloc] init]; 
[request setObject:@"Nexus 5" forKey:@"device_name"]; 
[request setObject:@"device id" forKey:@"device_id"]; 
[request setObject:[userDict valueForKey:@"mobileNumber"] forKey:@"mobile_number"]; 
[request setObject:@"1.0.0" forKey:@"app_version"]; 
[request setObject:@"0.0000" forKey:@"latitude:"]; 
[request setObject:@"0.0000" forKey:@"longitude"]; 
[request setObject:[userDict valueForKey:@"otp"] forKey:@"otp_number"]; 
[request setObject:passwordTxtFld.text forKey:@"password"]; 


NSData *jsonData = [NSJSONSerialization dataWithJSONObject:request options:NSJSONWritingPrettyPrinted error:nil]; 

NSMutableURLRequest *tRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://192.168.1.4:28901/register"]]; 
[tRequest setHTTPMethod:@"POST"]; 
[tRequest setValue:@"application/json; charset=utf-8" forHTTPHeaderField:@"Content-Type"]; 
[tRequest setValue:[NSString stringWithFormat:@"%lu", (unsigned long)[jsonData length]] forHTTPHeaderField:@"Content-Length"]; 
[[[NSURLSession sharedSession] dataTaskWithRequest:tRequest completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) 
    { 
     NSLog(@"%@",data); 
     NSDictionary *userDict1 = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil]; 
     NSLog(@"Result------------ : %@",userDict1); 

    }] resume]; 
+0

「エラー」をログに記録します。エラーがなければ 'data'を読んで(JSONに変換する)? – Larme

答えて

0

あなたのリクエストはデータを返さないため、コードが機能しません。

http://192.168.1.4:28901にアクセスでき、アプリ転送エラーが発生していないことを確認してください。

このようなもの: App Transport Securityはセキュリティで保護されていないため、クリアテキストHTTP(http://)リソースの読み込みをブロックしています。一時的な例外は、アプリのInfo.plistファイルで設定できます。

+0

私はあなたにanimaonlineを手に入れませんでした。もっと詳しく説明してくれるでしょう – nandini

+0

dataTaskWithRequestにブレークポイントを設定してください:tRequest completionHandler:^ データはNilになります.NSError *エラーは値を持ちます。 ログを確認して、ここに投稿してください。 – animaonline

関連する問題