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

Dotnet Discussion :

Web Service POST


Sujet :

Dotnet

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 80
    Points : 43
    Points
    43
    Par défaut Web Service POST
    Bonjour à tous,

    Je fais appel à un web service (service1).
    La méthode du service est POST.
    Je dois fournir deux paramètres: source et fdd (string d'un xml)

    Le serveur me renvoit l'erreur 400. Erreur dans la requete.

    Je pense que l'erreur doit provenir de postData, mais je ne sais pas pourquoi.

    Merci pour votre aide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Dim request As HttpWebRequest = WebRequest.Create("http://serveur/service1")
    request.Method = "POST"
    Dim str3 As String = "<?xml version=""1.0"" encoding=""UTF-8"" standalone=""yes""?><fdd><nom>CLIENT_1</nom></fdd>"
    Dim postData As String = "source=APPLICATION_TFT&fdd=" & str3
    Dim byteArray As Byte() = Encoding.UTF8.GetBytes(postData)
    request.ContentType = "application/x-www-form-urlencoded"
    request.ContentLength = byteArray.Length
     
    Dim dataStream As Stream = request.GetRequestStream()
    dataStream.Write(byteArray, 0, byteArray.Length)
    dataStream.Close()
    Dim response As HttpWebResponse = request.GetResponse()

  2. #2
    Membre expert
    Avatar de GuruuMeditation
    Homme Profil pro
    .Net Architect
    Inscrit en
    Octobre 2010
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Belgique

    Informations professionnelles :
    Activité : .Net Architect
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2010
    Messages : 1 705
    Points : 3 568
    Points
    3 568
    Par défaut
    Pour du développements de services web, il y a un outil pas mal : Fiddler (http://fiddler2.com/). Ca te permet de debugger les requêtes en te montrant ce que tu envoies et ce que tu reçois.
    Microsoft MVP : Windows Platform

    MCPD - Windows Phone Developer
    MCPD - Windows Developer 4

    http://www.guruumeditation.net

    “If debugging is the process of removing bugs, then programming must be the process of putting them in.”
    (Edsger W. Dijkstra)

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 80
    Points : 43
    Points
    43
    Par défaut
    Ce logiciel est très pratique. Merci beaucoup!
    Juste une dernière question concernant Fiddler, j'ai une application sur mon pc qui utilise le web service avec succès.
    Par contre dans Fiddler aucune trace.
    Je n'ai pas trouvé comment paramètrer Fiddler pour qu'il capture ce traffic. Je sais que c'est un processus java qui lance le ws mais je ne sais pas comment faire pour que Fiddler le catch.
    Merci pour ton aide précieuse!

  4. #4
    Membre éclairé Avatar de chamamo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    588
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 588
    Points : 735
    Points
    735
    Par défaut
    Il faut que l'application cliente passe par un proxy: lien

  5. #5
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 80
    Points : 43
    Points
    43
    Par défaut
    Merci pour votre réponse.
    Par contre, dans le domaine des proxy je ne connais pas trop.

    En fait je lance un . jar en ligne de commande avec passage de paramètres.
    Le web service s'est bien déroulé mais pas de trace dans fiddler
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java -jar test.jar -num 20123232 -date 10/10/13
    Que dois-je paramétrer pour visualiser l'appel dans Fiddler?

    Merci pour votre aide.

  6. #6
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    80
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 80
    Points : 43
    Points
    43
    Par défaut
    Finalement j'ai trouvé la solution dans le lien de chamamo

    Il faut rajouter les options avant -jar.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    java -DproxySet=true -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8888
    -jar test.jar -num 20123232 -date 10/10/13
    Je suis arrivé à voir les appels des ws dans fiddler et je suis arrivé à trouver mon erreur. (problème d'encodage du parametre fdd, il fallait que j'encode la variable str3)

    Un grand merci à vous deux!!!

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

Discussions similaires

  1. POST - Joindre un fichier via le web service
    Par bloodyrouk dans le forum Débuter
    Réponses: 1
    Dernier message: 08/06/2009, 07h43
  2. [WebService]Fichier Java et WSDL associé pour Web Services
    Par P4_le_requin_breton dans le forum Services Web
    Réponses: 9
    Dernier message: 23/02/2004, 13h55
  3. [JBuilder][Web Services] à partir de quelle version?
    Par sicard_51 dans le forum JBuilder
    Réponses: 2
    Dernier message: 25/08/2003, 13h54
  4. [Kylix] problème web service kylix
    Par RezzA dans le forum EDI
    Réponses: 3
    Dernier message: 11/02/2003, 15h50

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