AFNetworking POSTE et récupérer des Données
dans mon Iphone j'utilise AFNetworking à afficher des données d'un service web et d'obtenir des données de retour...
Voici mon exemple, je reçois toujours "false" à l'arrière comme réponse, ce que je fais de mal?
NSURL *baseURL = [NSURL URLWithString:@"http://myPath/Iphone/method"];
AFHTTPClient *httpClient = [[AFHTTPClient alloc] initWithBaseURL:baseURL];
[httpClient defaultValueForHeader:@"Accept"];
NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:
[udid copy], @"uuid",
nil];
NSMutableURLRequest *request = [httpClient requestWithMethod:@"POST" path:@"http://myPath/Iphone/method" parameters:params];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
[httpClient registerHTTPOperationClass:[AFXMLRequestOperation class]];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
response = [operation responseString];
NSLog(@"response: %@",response);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
NSLog(@"error: %@", [operation error]);
}];
[operation start];
EDIT: la méthode que j'appelle l'Url renvoie une chaîne de caractères (sans la chaîne n'est pas faux)
[HttpPost]
public bool checkIphone(string uuid)
{
IDictionary<string,object> check = Request.Properties;
uuid = check["uuid"].ToString();
//do anything with the uuid
if (1<0)
{
return true;
}
else
{
return false;
}
}
cette méthode que j'appelle avec mon iphone et normalement il devrait renvoyer du xml ou?
- stackoverflow.com/questions/7623275/...
- j'ai déjà lu cela, mais il ne m'a aidé
Vous devez vous connecter pour publier un commentaire.
Vous utilisez une manière compliquée de la construction de l'opération, mais il faudra travailler.
Mais il doit travailler, la chose qui vous manque est d'attribuer le parseur xml.
Dans la documentation de AFXMLRequestOperation est indiqué.
Aussi il n'y a pas besoin de faire la NSURLRequest via le
AFHTTPClient
, vous pouvez facilement en créer un vous auto ou utiliser leAFHTTPClient
de faire la création de laAFHTTPRequestOperation
pour vous.D'utiliser le AFHTTPClient à juste retour de ce que le serveur retourne :
AFXMLRequestOperation
et de ne pas définir la valeur par défaut de la classe dans leAFHTTPClient
utilise juste un simpleAFHTTPRequestOperation
et pase leresponseObject
àRaptureXML
RXMLElement
mais vous pouvez le faire NSLog(@"Réponse: %@", responseObject);AFHTTPClient
et il va ajouter de la méthode à l'URL. Ressemble à la responseObject est unNSData
. Essayez ceci:NSString *responseString = [[NSString alloc] initWithData:responseObject encoding:NSUTF8StringEncoding]; NSLog(@"response: %@", responseString);
NSLog
prints "faux", alors le serveur ne renvoie aucun XML.Avez-vous une faute de frappe ici?
[udid copy], @"uuid",