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

Langage PHP Discussion :

[SOAP] Interroger fonction avec paramètres [PHP 5.0]


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 196
    Points : 62
    Points
    62
    Par défaut [SOAP] Interroger fonction avec paramètres
    Bonjour,

    J'ai créé un webservice en Python, sans WSDL, qui fonctionne bien lorsqu'on l'interroge avec un programme en python.

    J'essaie de l'interroger avec un programme en php, ça fonctionne bien pour une fonction sans paramètre, mais j'ai une erreur si ma fonction à un ou plusieurs paramètres.

    en python, j'ai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    def MaFonction(MonParam):
    ...
    et en php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    < ?php
    $clientSOAP = new SoapClient( null,
    array ('location' => 'http://MonServeur:MonPort',
    'uri' => 'MonNamespace',
    'trace' => 1,
    'exceptions' => 1
    ));
    $ret = $clientSOAP->__soapCall('MaFonction',Array('abcde'));
    // $ret = $clientSOAP->__soapCall('MaFonction',Array('MonParam' => 'abcde'));
    print_r($ret);
    ?>
    Mais ça ne fonctionne pas, j'ai l'erreur :
    PHP Fatal error: Uncaught SoapFault exception: [SOAP-ENV:Server] Method Failed

    Est-ce que quelqu'un saurait comment faire fonctionner ce code ?

    Merci.

  2. #2
    Membre émérite
    Avatar de gene69
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 769
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 769
    Points : 2 446
    Points
    2 446
    Par défaut
    j'ai aucune idée de comment corriger ton problème, mais je crois que désactiver la compression & le https permettrait de faire des capture wireshark au niveau du serveur pour comparer les scénarios.

  3. #3
    Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 196
    Points : 62
    Points
    62
    Par défaut
    Au niveau du serveur, j'ai ce message lorsque j'appelle la fonction :
    TypeError: MaFonction() got an unexpected keyword argument 'param0'
    Comment je peux faire pour ne pas envoyer ce "param0", c'est ce qui est envoyé par défaut apparemment...

    Merci

  4. #4
    Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 196
    Points : 62
    Points
    62
    Par défaut
    J'ai modifié mon webservice en mettant comme paramètre de la fonction "param0" et ça fonctionne...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DOM] Appel fonction avec paramètre depuis document.write
    Par kev42100 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 06/05/2008, 14h12
  2. Fonction avec paramètre optionnel
    Par Damien2007 dans le forum ASP
    Réponses: 1
    Dernier message: 27/06/2007, 15h49
  3. Fonction avec paramètre illimité
    Par Kiboumz dans le forum Langage
    Réponses: 2
    Dernier message: 09/07/2006, 17h58
  4. [Function]Appel de fonction avec paramètre
    Par julienOriano dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 02/06/2006, 07h48
  5. Réponses: 4
    Dernier message: 11/09/2005, 01h21

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