Iphone requête Http réponse à l'aide de json
Je suis en train d'envoyer les données au serveur et obtenir une réponse. De données est d'atteindre le serveur, mais je n'obtiens pas de réponse. La valeur des données de réponse est nulle bcd de qui c'est lancer une exception,
-JSONValue failed. Error trace is: (
"Error Domain=org.brautaset.JSON.ErrorDomain Code=11 \"Unexpected end of string\" UserInfo=0x4e2dd70 {NSLocalizedDescription=Unexpected end of string}"
Quelqu'un peut-il svp aider moi.....
Mon code:
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://192.168.0.83:8082/WebServiceProject/AcessWebservice?operation=login"]];
[[NSURLConnection alloc] initWithRequest:request delegate:self];
NSURLResponse *theResponse =[[NSURLResponse alloc]init];
NSError *theError = NULL;
NSArray *keys = [NSArray arrayWithObjects:@"UserId", @"Password", nil];
NSArray *objects = [NSArray arrayWithObjects:@"rajin.sasi", @"abhi1551", nil];
NSDictionary *jsonDictionary = [NSDictionary dictionaryWithObjects:objects forKeys:keys];
NSString* jsonString = [jsonDictionary JSONRepresentation];
SBJSON *jsonParser = [SBJSON new];
[jsonParser objectWithString:jsonString];
NSLog(@"Val of json parse obj is %@",jsonString);
[request setHTTPMethod:@"POST"];
[request setValue:jsonString forHTTPHeaderField:@"json"];
responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&theResponse error:&theError];
[request setHTTPBody:responseData];
NSMutableString* stringData= [[NSString alloc]initWithData:responseData encoding:NSUTF8StringEncoding];
NSDictionary *jsonDictionaryResponse = [stringData JSONValue];
NSString *json_message=[jsonDictionaryResponse objectForKey:@"message"];
printf("Json string is %s **********",[json_message UTF8String]);
OriginalL'auteur Akshay | 2011-03-22
Vous devez vous connecter pour publier un commentaire.
Je ne suis pas au courant des détails de votre webservice, mais le code ci-dessous pourrait être la source de votre problème (ou au moins l'un d'entre eux!)
Vous êtes l'envoi de la demande avant de fixer le corps, ce qui je suppose doit inclure votre
jsonString
contenu. De Plus, vous êtes en attribuant à votrejsonString
à un champ d'en-tête, êtes-vous sûr que c'est ce que vous voulez? Voici une deviner ce qui pourrait fonctionner:Je vous suggère d'avoir un bon coup d'oeil par le biais de ce code comme il est un gâchis pour le moment! Vous avez deux
NSURLConnection
demande d'y aller, unasynchronous
et unsynchronous
, c'est un peu difficile à comprendre de quoi/pourquoi vous faites tout cela afin de vérifier la documentation d'Apple pour NSURLConnection et nettoyer votre code...[MODIFIER]
Voici ma suggestion pour vous:
Ok, alors si vous pensez que c'est bien, alors je suppose que c'est beau!
do u think est-il des défauts ou des erreurs dans la réponse de la partie.... responseData = [NSURLConnection sendSynchronousRequest:demande returningResponse:&theResponse erreur:&leerreur]; NSMutableString* stringData= [[NSString alloc]initWithData:responseData encodage:NSUTF8StringEncoding]; NSDictionary *jsonDictionaryResponse = [stringData JSONValue]; NSString *json_message=[jsonDictionaryResponse objectForKey:@"message"]; printf("chaîne Json est de %s **********",[json_message UTF8String]);
Voir mon édité réponse pour quelque chose qui pourrait fonctionner
Merci beaucoup pour votre réponse rapide,mais je ne suis pas en mesure d'obtenir des valeurs.J'ai essayé de mettre des points d'arrêt dans la méthode, mais la taille de la variable de données est 0bytes..je suis coincé,en essayant de 2 jours, mais incapable de fugue ce qui se passe dans...svp aider moi...
OriginalL'auteur Rog
OriginalL'auteur
Essayez ceci :
OriginalL'auteur Akshay