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

WinDev Discussion :

[WD12] Utiliser un SOAP avec authentification sur un automate


Sujet :

WinDev

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 24
    Points : 22
    Points
    22
    Par défaut [WD12] Utiliser un SOAP avec authentification sur un automate
    Bonjour,
    Je reviens encore avec des petits soucis!
    Voila j'ai un bout de code sous VB (utiliser dans un tableau Excel) et j'aimerais pouvoir le translater en Windev. Concretement ce code permet de se connecter à un automate via un SOAP (Web service) et obtenir des valeurs comme Marche ou Arret... Seulement le hic c'est qu'il y a une authentification à faire pour que je puisse interroger le serveur SOAP et je ne sais pas trop comment procéder. J'ai utiliser l'utilitaire de Windev, Atelier > Services Web XML (SOAP, .Net, J2EE) > Importer et utiliser un service dans ce projet, tout s'est bien passé sauf qu'il me manque a mettre l'utilisateur et le mot de passe! Mais je sais pas où!

    Voici le code VB :
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    'Definition of SOAP/WSDL
    'For more informations please look after e.g. "www.w3schools.com/default.asp
    
    'SOAP: "Simple Object Access Protocol"
    '      SOAP is a simple XML based protocol to let aplications exhange information about HTTP
    'WSDL: "Web service Definition language"
    '      WSDL is a document written in XML. The document describes a Web service.
    '      It specifies the location of the service and the operations (or methods) the service exposes.
    
    'Definition of the constant "WSDL_URL"
    Const WSDL_URL = "http://localhost/soap/RuntimeAccess?wsdl"
    'Button "Execute GetValue"
    Private Sub CommandButton1_Click()
    Dim Rt
    Set Rt = CreateObject("MSSOAP.SoapClient")
    
    'definition of the adress of the specific Operator Panel which act as HTTP-Server
    URL = "http://192.168.1.10/soap/RuntimeAccess?wsdl"
    Rt.mssoapinit URL
    
    'Handover of the Password
    Rt.ConnectorProperty("AuthUser") = "User"
    Rt.ConnectorProperty("AuthPassword") = "Motdepasse"
    
    'Pick out the tag name of an existing tag from the HTTP-Server
    Dim Answer
    Variable_MARCHE = Worksheets("Sheet1").Range("D7").Value
    Variable_VITESS = Worksheets("Sheet1").Range("D8").Value
    
    'Read the value of the Tag_1 from the HTTP-Server
    Answer = Rt.GetValue(Variable_MARCHE)
    Worksheets("Sheet1").Range("G7").Value = Answer
    
    'Read the value of the Tag_2 from the HTTP-Server
    Answer = Rt.GetValue(Variable_VITESS)
    Worksheets("Sheet1").Range("G8").Value = Answer
    
    End Sub
    Merci beaucoup!

  2. #2
    Membre habitué
    Homme Profil pro
    En rupture avec la societé
    Inscrit en
    Novembre 2008
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : En rupture avec la societé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 144
    Points : 194
    Points
    194
    Par défaut
    salut

    deja il faudrai savoir si ton authentification est serveur ou session

    ton code c'est du vbscript.

  3. #3
    Membre expert
    Avatar de Emmanuel Lecoester
    Profil pro
    Inscrit en
    Février 2003
    Messages
    1 493
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2003
    Messages : 1 493
    Points : 3 266
    Points
    3 266
    Par défaut
    En théorie le wdsl fourni TOUT ce que tu as besoin. Il doit y avoir une fonction qui devrait te donner la réponse.

    Sinon comme le dit burndev il faudrait savoir si c'est le soap qui possède une authent ou si c'est tout simplement le serveur. En fait le couple user/pwd ne sera pas au même endroit dans le header du flux transmis.
    Emmanuel Lecoester
    => joomla addict.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 24
    Points : 22
    Points
    22
    Par défaut
    Comment je peux savoir si c'est le soap qui possède une authentification ou si c'est le serveur? Tout ce que je sais c'est que quand je tape dans IE "http://192.168.1.10", j'ai une interface web avec le meme user/mot de passe que le code dans le VBScript à rentrer et j'accède à la gestion.
    Voila.

    J'espere que j'ai été claire

    Merci.

  5. #5
    Membre habitué
    Homme Profil pro
    En rupture avec la societé
    Inscrit en
    Novembre 2008
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : En rupture avec la societé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 144
    Points : 194
    Points
    194
    Par défaut
    si tu as un formulaire pour autehntifier = cookie ou encapsulation soap
    si tu as une vieille fenetre windows = serveur

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 24
    Points : 22
    Points
    22
    Par défaut
    Je n'ai pas de fenetre ou quoique ce soit qui s'ouvre donc je pense que c'est encapsuler.
    De toute facon quand je clic sur mon bouton qui permet d'obtenir l'etat de l'automate dans ma feuille excel, j'ai directement mon resultat qui apparait dans la cellule.
    Et sur l'interface web, j'ai un champ user et un champ mot de passe a renseigner. En gros c'est comme l'authentification sur ce forum, pas de popup, pas de fenetre, rien.

  7. #7
    Membre habitué
    Homme Profil pro
    En rupture avec la societé
    Inscrit en
    Novembre 2008
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : En rupture avec la societé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 144
    Points : 194
    Points
    194
    Par défaut
    donc ton authentification est session ou soap

    si ton authentification est soap tu dois pouvoir la lire l'affichage du wsdl via le proxy

    ou si tu prefere une lecture du fichier xml

    maintenant il faut connaitre la def de l'objet MSSOAP.SoapClient, perso je ne le connait pas

    a plus

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 24
    Points : 22
    Points
    22
    Par défaut
    Voila juste pour vous dire que mon probleme a été résolu avec l'aide de Windev (F1) :

    <URL du serveur SOAP> : Chaîne de caractère (avec guillemets)
    URL du serveur SOAP à contacter. Ce paramètre est fourni dans la documentation du serveur SOAP et de ses procédures.
    Pour soumettre une requête avec authentification, ce paramètre doit correspondre à :

    http://utilisateur:motdepasse@URLServeur

    Il est également possible de préciser le port en utilisant la syntaxe : http://utilisateur:motdepasse@URLServeur:port

    Il me suffisait de rajouter le login et mot de passe dans l'URL dans ma procédure globale GetValue.

    Merci.

  9. #9
    Expert éminent sénior

    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    19 647
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 19 647
    Points : 32 889
    Points
    32 889
    Par défaut
    Merci pour le retour

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

Discussions similaires

  1. WSDL SOAP avec authentification
    Par cerede2000 dans le forum C#
    Réponses: 4
    Dernier message: 23/07/2013, 06h55
  2. Utiliser visual basic avec bd sur sql
    Par shaka17 dans le forum Visual Studio
    Réponses: 8
    Dernier message: 11/10/2010, 12h48
  3. [phpMyAdmin] Utilisation de phpMyAdmin avec Apache2 sur Windows
    Par filiplarlibe dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 08/05/2009, 19h01
  4. Utilisation d'Excel avec Python sur un PC n'ayant pas Excel
    Par Dazdh dans le forum Bibliothèques tierces
    Réponses: 4
    Dernier message: 26/01/2009, 11h53
  5. Exemple d'utilisation de SOAP avec C++
    Par jlassira dans le forum Bibliothèques
    Réponses: 5
    Dernier message: 04/01/2006, 08h42

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