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

Bibliothèques et frameworks PHP Discussion :

[Web Service] appel methode par SoapClient nbre de params. limité ?


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Futur Membre du Club
    Inscrit en
    Décembre 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 10
    Points : 8
    Points
    8
    Par défaut [Web Service] appel methode par SoapClient nbre de params. limité ?
    Bonjour a tous,
    je dois utiliser un service soap, dont je n'ai pas la main sur le serveur.

    dans les paramètres d'appel d'une des méthodes, je dois passer un array de valeurs comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    array( 
    '48648541',
    '47846546',
    '45621454'
    );
    la méthode répond bien jusqu'à un certain nombre de valeurs dans mon array.
    (environ 900).
    Au delà, la méthode répond très vite mais avec une structure de réponse vide. Pas d'erreur signalées.
    pour info j'ai un set_time_limit(0) et ini_set('default_socket_timeout', '180') au début de mon script.

    Pensez - vous qu'il existe une limite de paramètres d'entrée ?
    et si oui existe t-il un moyen , coté client d'étendre cette limite ?
    Je n'ai pas trouvé d'infos sur le sujet.

  2. #2
    Membre éclairé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    772
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2004
    Messages : 772
    Points : 872
    Points
    872
    Par défaut
    Tu es client d'un webservice si j'ai bien compris.

    Une WSDL doit t'exposer le format du message que tu dois générer avant d'envoyer. Sans cette WSDL nous ne pouvons pas t'aider... Donnes nous l'URL.

    Et montre ton code qui fait la requête stp, sans ça on ne fera pas grand chose...
    Ce qui nous intéresse commence à la ligne "new SoapClient(...)" !

    Mais si tu atteins une limite technique, elle provient plus sûrement du serveur qui fournit le webservice que du côté client, et là tu n'y peux pas grand chose...
    • Mon blog PHP : http://blog.alterphp.com
    • "Peace cannot be kept by force, it can only be achieved by Understanding" -- Albert Einstein

  3. #3
    Futur Membre du Club
    Inscrit en
    Décembre 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 10
    Points : 8
    Points
    8
    Par défaut
    Merci d'avoir répondu.

    Je ne peux malheureusement pas vous fournir plus d'informations car le web service est protégé par login/pass et délivre, de plus, des données privées et sensibles.

    Je posais plutôt la question de manière générale à savoir si il était connu qu'une limite existait dans ce cas de figure en utilisant Soapclient.

    Je pense aussi que le soucis vient du côté serveur.

  4. #4
    Membre éclairé

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    772
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2004
    Messages : 772
    Points : 872
    Points
    872
    Par défaut
    Je ne crois pas qu'il y ait une limite de taille du message XML échangés via le protocole SOAP dan sles spécifications SOAP. Par contre, dès que tu transmets des données sur un réseau, plus tu as de chances que ton message soit fragmenté. Bien sûr il y a tout plein de système pour recoller les morceaux mais globalement, il y a toujours un équilibre à trouver entre fragmentation et groupage des données.
    Cet équilibre dépend des infrastructures techniques le plus souvent.

    Fais des tests de temps de réponse en faisant le nombre de paramètres par envoi pour une quantité donnée.
    ==> 1 envoi de 1000 valeurs, 10 envois de 100 valeurs, 100 envois de 10 valeurs...
    • Mon blog PHP : http://blog.alterphp.com
    • "Peace cannot be kept by force, it can only be achieved by Understanding" -- Albert Einstein

  5. #5
    Futur Membre du Club
    Inscrit en
    Décembre 2008
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 10
    Points : 8
    Points
    8
    Par défaut
    oui, ne pouvant obtenir + de précisions du propriétaire du serveur soap, et ayant fais plusieurs tests d'appel avec un array de plus en plus chargé, j'ai "fragmenté" ma requête en plusieurs appels avec des array plus petits.

    Merci d'avoir répondu

    je met tout de même un "résolu" bien que la raison reste floue.

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

Discussions similaires

  1. WEB SERVICE APPEL LIENS + PARAMETRES
    Par Poucet dans le forum Services Web
    Réponses: 0
    Dernier message: 20/11/2012, 10h28
  2. [Web Service][SOAP] Valeur par défaut d'une fonction
    Par Chiendelune dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 13/03/2010, 10h23
  3. web service cxf - method parametre null
    Par bordi dans le forum Services Web
    Réponses: 1
    Dernier message: 05/09/2009, 17h15
  4. [Web Service][cURL] authentification par cookie déjà créé
    Par Maf77 dans le forum Bibliothèques et frameworks
    Réponses: 11
    Dernier message: 03/10/2008, 03h51
  5. Un web service appelle la methode d'un autre web service
    Par afrold dans le forum Services Web
    Réponses: 7
    Dernier message: 21/06/2008, 10h08

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