Précédent   Forum du club des développeurs et IT Pro > Systèmes > Mac
Mac Forum d'entraide sur environnement et développement OS X et iOS. Avant de poster : lire la FAQ Mac ; voir la page Outils ; voir les tutoriels.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 12/10/2011, 18h45   #1
pierred69
Invité de passage
 
Homme
Développeur Web
Inscription : juin 2011
Messages : 14
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : juin 2011
Messages : 14
Points : 0
Points : 0
Par défaut iPhone et envoi en POST

Bonsoir,

je développe actuellement une appli iPhone et dois soumettre des données saisies dans des champs à un webservice. J'ai suivi la doc mais impossible d'envoyer quoique ce soit en POST... Le serveur ne reçoit pas les données en POST... Voici l'extrait du code...


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:urlService];
    
    [request setHTTPMethod:@"POST"];
    [request setTimeoutInterval:30];
    //[request setHTTPBody:[paramString dataUsingEncoding:NSUTF8StringEncoding]];
    [request setHTTPBody:[NSData dataWithBytes: [ paramString UTF8String ] length: [ paramString length ]]];

    NSURLResponse *response = NULL;
    NSError *requestError = NULL;
    NSData *responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&requestError];
    NSString *responseString = [[[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding] autorelease];
    
    return responseString;
Et paramString vaut @"login=xxx&motdepasse=xxx" en gros...

Merci à vous !!
pierred69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2011, 00h24   #2
kOrt3x
Rédacteur/Modérateur

 
Avatar de kOrt3x
 
Homme Aurélien Gaymay
Technicien Informatique/Etudiant Web
Inscription : septembre 2006
Messages : 2 710
Détails du profil
Informations personnelles :
Nom : Homme Aurélien Gaymay
Âge : 30
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Technicien Informatique/Etudiant Web
Secteur : Santé

Informations forums :
Inscription : septembre 2006
Messages : 2 710
Points : 11 658
Points : 11 658
Envoyer un message via AIM à kOrt3x Envoyer un message via MSN à kOrt3x Envoyer un message via Skype™ à kOrt3x
Et quel est le problème exactement ?
__________________
La rubrique Mac
Les cours & tutoriels Mac
Critiques de Livres Mac & iOS
FAQ Mac & iOS

________________________________________________________________________
QuickEvent : Prise de rendez-vous rapide pour iPhone/iPad et iPod Touch (AppStore)
Mon Livre sur AppleScript : AppleScript: L'essentiel du langage et de ses applications
kOrt3x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/10/2011, 09h15   #3
pierred69
Invité de passage
 
Homme
Développeur Web
Inscription : juin 2011
Messages : 14
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : juin 2011
Messages : 14
Points : 0
Points : 0
Citation:
Envoyé par kOrt3x Voir le message
Et quel est le problème exactement ?
Le problème est que la requête est considérée comme une requête de type GET et que $_POST['login'] (dans le cas de cet exemple), est donc NULL...

J'ai également essayé d'autres alternatives en matière de code, comme changer l'en-tête http et faire croire à un multi-part, j'ai également voulu installer ASIHTTPRequest mais ça plante complètement avec le projet, malgré le fait que j'intègre les librairies requises d'après la doc... Bref, aucune solution testé ne me permet de soumettre une communication POST...

Edit : j'ai réussi à intégrer la librairie ASIHTTPRequest (j'avais importé des fichiers de tests qui marchaient pas d'où l'erreur), mais malgré ça, je n'envoie que des méthodes GET...

Voici le code avec ASIHTTPRequest pour que vous voyiez où serait l'erreur...

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:urlService];
[request setUseCookiePersistence:YES];
[request setPostValue:@"xxxx" forKey:@"login"];
[request setPostValue:@"xxxx" forKey:@"mdp"];
[request setRequestMethod:@"POST"];
[request startSynchronous];
NSString *responseString;
NSError *error = [request error];
if (!error){
        responseString = [request responseString];
    }else{
        responseString = [[NSString alloc] initWithString:@"Service indisponible"];
}
     
return responseString;
pierred69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 01h48.


 
 
 
 
Partenaires

Hébergement Web