Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(Excel) Peoplevox WMS AuthenticationProvides an example of a call to the Peoplevox WMS Authenticate using SOAP 1.1.
' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. ' Sends a POST that looks like this: ' POST /PEOPLEVOX_CLIENT_ID/resources/integrationservicev4.asmx HTTP/1.1 ' Content-Type: text/xml;charset=UTF-8 ' SOAPAction: http://www.peoplevox.net/Authenticate ' Content-Length: (automatically computed and added by Chilkat) ' Host: qac.peoplevox.net ' ' <?xml version="1.0" encoding="utf-8"?> ' <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:peop="http://www.peoplevox.net/"> ' <soapenv:Header/> ' <soapenv:Body> ' <peop:Authenticate> ' <peop:clientId>PEOPLEVOX_CLIENT_ID</peop:clientId> ' <peop:username>PEOPLEVOX_USERNAME</peop:username> ' <peop:password>PEOPLEVOX_BASE64_PASSWORD</peop:password> ' </peop:Authenticate> ' </soapenv:Body> ' </soapenv:Envelope> ' Dim sbSoapXml As Chilkat.StringBuilder Set sbSoapXml = Chilkat.NewStringBuilder success = sbSoapXml.Append("<?xml version=""1.0"" encoding=""utf-8""?>") success = sbSoapXml.Append("<soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:peop=""http://www.peoplevox.net/"">") success = sbSoapXml.Append(" <soapenv:Header/>") success = sbSoapXml.Append(" <soapenv:Body>") success = sbSoapXml.Append(" <peop:Authenticate>") success = sbSoapXml.Append(" <peop:clientId>PEOPLEVOX_CLIENT_ID</peop:clientId>") success = sbSoapXml.Append(" <peop:username>PEOPLEVOX_USERNAME</peop:username>") success = sbSoapXml.Append(" <peop:password>PEOPLEVOX_BASE64_PASSWORD</peop:password>") success = sbSoapXml.Append(" </peop:Authenticate>") success = sbSoapXml.Append(" </soapenv:Body>") success = sbSoapXml.Append("</soapenv:Envelope>") ' Base64 encode the password and update the SOAP XML. Dim crypt As Chilkat.Crypt2 Set crypt = Chilkat.NewCrypt2 passwordBase64 = crypt.EncodeString("PEOPLEVOX_PASSWORD","utf-8","base64") numReplacements = sbSoapXml.Replace("PEOPLEVOX_BASE64_PASSWORD",passwordBase64) Dim req As Chilkat.HttpRequest Set req = Chilkat.NewHttpRequest req.HttpVerb = "POST" req.SendCharset = True req.Charset = "utf-8" req.AddHeader "Content-Type","text/xml" req.AddHeader "SOAPAction","http://www.peoplevox.net/Authenticate" req.Path = "/PEOPLEVOX_CLIENT_ID/resources/integrationservicev4.asmx" success = req.LoadBodyFromString(sbSoapXml.GetAsString(),"utf-8") Dim http As Chilkat.Http Set http = Chilkat.NewHttp http.FollowRedirects = True Set resp = http.SynchronousRequest("qac.peoplevox.net",443,True,req) If (http.LastMethodSuccess <> True) Then Debug.Print http.LastErrorText Exit Sub End If ' We should expect a 200 response if successful. If (resp.StatusCode <> 200) Then Debug.Print "Response StatusCode = "; resp.StatusCode Debug.Print "Response StatusLine: "; resp.StatusLine Debug.Print "Response Header:" Debug.Print resp.Header Exit Sub End If ' A successful response returns this XML: ' <?xml version="1.0" encoding="utf-8" ?> ' <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> ' <soap:Body> ' <AuthenticateResponse xmlns="http://www.peoplevox.net/"> ' <AuthenticateResult> ' <ResponseId>0</ResponseId> ' <TotalCount>1</TotalCount> ' <Detail>PEOPLEVOX_CLIENT_ID,7fe13431-c67f-4d52-bcfd-b60fbfa3b0ca</Detail> ' <Statuses /> ' <ImportingQueueId>0</ImportingQueueId> ' <SalesOrdersToDespatchIds /> ' </AuthenticateResult> ' </AuthenticateResponse> ' </soap:Body> ' </soap:Envelope> ' Dim xmlResponse As Chilkat.Xml Set xmlResponse = Chilkat.NewXml success = xmlResponse.LoadXml(resp.BodyStr) Debug.Print xmlResponse.GetXml() ' Show how to get the Detail, which must be the ClientId,SessionId detail = xmlResponse.ChilkatPath("soap:Body|AuthenticateResponse|AuthenticateResult|Detail|*") Debug.Print "Detail = "; detail |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.