AFNetworking ne veulent pas représenter la valeur BOOL comme true/false dans la requête JSON. @YES essayées, mais NSNumber aucune chance, il convertit à 0 ou 1.après BOOL à JSON en utilisant AFNetworking 3.X ObjectiveC
NSMutableDictionary *data = [[NSMutableDictionary alloc] init];
[data setValue:@YES forKey:@"favorite"];
NSMutableDictionary *params = [[NSMutableDictionary alloc] init];
[params setObject:data forKey:@"data"];
puis donner ce dictionnaire à AfNetworking param 3
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
AFJSONRequestSerializer *serializer = [AFJSONRequestSerializer serializer];
[serializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[serializer setValue:@"application/json" forHTTPHeaderField:@"Accept"];
manager.requestSerializer = serializer;
[manager POST:@"HTTPS://JSON URL" parameters:params progress:^(NSProgress *uploadProgress) {
} success:^(NSURLSessionDataTask * task, id responseObject) {
//SUCCESS
} failure:^(NSURLSessionDataTask *task, NSError *error) {
//FAILED REQUEST
}];
La façon de mettre un booléen dans un dictionnaire est d'utiliser un NSNumber comme tu le fais. Je l'ai fait pour chaque fois que j'ai jamais interagi avec JSON. Ça marche. Pourquoi pensez-vous que cela ne fonctionne pas? – Fogmeister
Je suis en train de journaliser "params" avec NSLog et il y a 0 ou 1 –
Oui, c'est ce à quoi ça ressemblera. Pourquoi c'est un problème? Voilà à quoi ça devrait ressembler. – Fogmeister