Yuvalanmış değişebilir sözlüğü AFNetworking 3.0'da POST isteğinde parametreler olarak göndermeye çalışıyorum.İç içe NSMutableDictionary AFNetworking 3.0'da POST isteği için parametre olarak gönderme
self.requestSerializer = [AFJSONRequestSerializer serializer];
self.responseSerializer = [AFJSONResponseSerializer serializerWithReadingOptions:NSJSONReadingAllowFragments];
sözlük aşağıdaki gibi hazırlanmıştır: Burada
NSNumberFormatter *f = [[NSNumberFormatter alloc] init];
f.numberStyle = NSNumberFormatterNoStyle;
NSNumber *myNumber = [f numberFromString:self.userMobNoTf.text];
NSString *UDID = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
NSMutableDictionary *miniDict = [NSMutableDictionary dictionary];
[miniDict setObject:[NSNumber numberWithInteger:0] forKey:@"ID"];
[miniDict setObject:self.userIDTf.text forKey:@"UserId"];
[miniDict setObject:self.userNameTf.text forKey:@"Name"];
[miniDict setObject:self.userPasswordTf.text forKey:@"Password"];
[miniDict setObject:UDID forKey:@"IMEI"];
[miniDict setObject:@"1.0" forKey:@"AppVersion"];
[miniDict setObject:self.userNameTf.text forKey:@"CreatedBy"];
[miniDict setObject:myNumber forKey:@"MobileNo"];
[miniDict setObject:[NSNumber numberWithInt:1] forKey:@"isActive"];
NSMutableDictionary *paramDict = [NSMutableDictionary dictionary];
[paramDict setObject:self.userNameTf.text forKey:@"UserName"];
[paramDict setObject:self.userPasswordTf.text forKey:@"Password"];
[paramDict setObject:self.userIDTf.text forKey:@"UserId"];
[paramDict setObject:myNumber forKey:@"MobileNo"];
[paramDict setObject:UDID forKey:@"Imei"];
[paramDict setObject:[miniDict mutableCopy] forKey:@"Food_UserLogin"];
POST istek: Ancak
[appD.sessionManager POST:@"FoodSignUpSave" parameters:paramDict progress:^(NSProgress * _Nonnull uploadProgress) {
} success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
dispatch_async(dispatch_get_main_queue(), ^{
[radialHUD dismiss];
});
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
dispatch_async(dispatch_get_main_queue(), ^{
[radialHUD dismiss];
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error!" message:error.description delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles: nil];
[alert show];
});
}];
, aşağıda alıyorum İşte
benim SessionManager ayarları ise hata:Error Domain=NSCocoaErrorDomain Code=3840 "The operation couldn’t be completed. (Cocoa error 3840.)" (Invalid value around character 0.) UserInfo=0x174660fc0 {NSDebugDescription=Invalid value around character 0., NSUnderlyingError=0x174241bc0 "Request failed: bad request (400)"}
MiniDict'ı "Food_UserLogin" anahtarına yollamıyorsam, başarı yanıtı alıyorum ancak bu parametreyi sözlük oluştururken sorun oluşturuyor. Neyin yanlış olduğuna dair herhangi bir öneriniz var mı?
P.S. Sunucu tarafında değişiklik yapmak istemem.
Niçin, neden değişebilir olması gerekiyor? – trojanfoe
Uygun json dizgisini dönüştürmek için bir tane okuyabilirim, bir değişebilir sözlük –
göndermek gerekiyor Ve JSON ile ilgili soru nedir? – trojanfoe