IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Erreur sur une HttpResponse


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 281
    Par défaut Erreur sur une HttpResponse
    bonjour,

    J'envoie une requête POST à un fichier PHP, si toutes les conditions sont bonnes je fais un echo 'ok' que j'analyse après dans mon code Java.

    Cependant j'ai rajouté dans un 2ème temps dans mon fichier PHP , une requête Ajax. Donc maintenant dans ma réponse HTTP j'ai le ok + le code "<script> $ajax(.....)</script>" ce qui est embêtant.

    Comment supprimer tout ce qui m’intéresse pas dans la réponse ?

  2. #2
    Membre chevronné
    Homme Profil pro
    Ed Nat
    Inscrit en
    Janvier 2013
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ed Nat
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 325
    Par défaut
    Bonjour,
    Tu peux mettre la réponse destinée à Androïd dans un fichier php à part, et inclure ce fichier dans le fichier php intégrant le code javascript, ce qui t'évite d'utiliser les regExpr pour nettoyer un peu "salement" la réponse reçue...

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 281
    Par défaut
    Je pense faire comme ceci , entouré ma réponse dans une balise ce qui donnerait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <reponse> ma reponse android </reponse>
    J'ai remarqué que mon code javascript ne s’exécute par lors de la requête HTTP alors que si je l’exécute dans un navigateur classique cela marche. Une explication ?

  4. #4
    Membre chevronné
    Homme Profil pro
    Ed Nat
    Inscrit en
    Janvier 2013
    Messages
    325
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ed Nat
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2013
    Messages : 325
    Par défaut
    Bonjour,
    Ce genre là alors, avec expressions régulières :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    public class Test {
     
    	/**
             * @param args
             */
    	public static void main(String[] args) {
     
    		System.out.println(getReponse("<reponse>Réponse androïd </reponse>blabla<script type=\"text/javascript\">"));
     
    	}
     
    	public static String getReponse(String input) {
    		String result = input;
    		Pattern p = Pattern.compile(Pattern.quote("<reponse>") + "((\\s|.)*)" + Pattern.quote("</reponse>"), Pattern.CASE_INSENSITIVE);
    		Matcher m = p.matcher(input);
    		if (m.find()) {
    			result = m.group(1);
    		}
    		return result;
    	}
    }

  5. #5
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Citation Envoyé par anto2b Voir le message
    J'ai remarqué que mon code javascript ne s’exécute par lors de la requête HTTP alors que si je l’exécute dans un navigateur classique cela marche. Une explication ?
    Normal. Le navigateur est prévu pour interpréter le code javascript reçu dans la réponse http. Ta requête http depuis android renvoie une réponse (finalement une simple suite de caractères ASCII) dont l'exploitation reste entièrement à ta charge.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  6. #6
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 281
    Par défaut
    Citation Envoyé par Hephaistos007 Voir le message
    Normal. Le navigateur est prévu pour interpréter le code javascript reçu dans la réponse http. Ta requête http depuis android renvoie une réponse (finalement une simple suite de caractères ASCII) dont l'exploitation reste entièrement à ta charge.
    Merci de votre explication. Mais que dois-je mettre dans mon PHP pour qu'il interprète le javascript ?

  7. #7
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    PHP n’interprète pas du JavaScript, il écrit simplement (echo/print) du code JavaScript dans le flux de réponse qui sera interprété une fois arrivé sur le navigateur client. C'est pour cela qu'ont dit que PHP s’exécute sur le serveur alors que JavaScript s’exécute sur le client.

    Au mieux, si après avoir reçu ta réponse http sur le périphérique Android tu souhaites vraiment interpréter les instructions JavaScript qu'elle contient, il faut que tu passes son contenu à une android.webkit.WebView qui s'en chargera (c'est le composant de rendu qui au coeur d'une famille de navigateurs).
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

Discussions similaires

  1. Réponses: 8
    Dernier message: 23/01/2020, 09h34
  2. Erreur sur une boite de dialogue WXWIDGETS
    Par barbarello dans le forum Autres éditeurs
    Réponses: 6
    Dernier message: 06/01/2006, 20h46
  3. Réponses: 8
    Dernier message: 01/03/2005, 16h01
  4. Réponses: 4
    Dernier message: 14/06/2004, 16h18
  5. Erreur sur une fonction avec des paramètres
    Par Elois dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 05/05/2004, 21h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo