' Create a new envelope object, this is the core part of any pocketSOAP usage.
dim env
set env = CreateObject("pocketSOAP.Envelope.11")
' set the methodName and methodname Namespace values
env.SetMethod "getQuote", "urn:xmethods-delayed-quotes"
' create the parameter, we'll ask for a quote for Salesforce.com [their ticker is CRM]
env.Parameters.Create "symbol", "CRM"
' now, we need to send the SOAP request to the endpoint, so we create a transport object
dim http
set http = CreateObject("pocketSOAP.HTTPTransport")
' we need to set the SOAPAction header
http.SOAPAction = "urn:xmethods-delayed-quotes#getQuote"
' now we send the request, this takes the envelope object we've been working with
' and serializes it out over the HTTP request
http.Send "http://64.124.140.30:9090/soap", env
' now, we need to parse the SOAP message we get as a response
env.parse http
' and now, extract the return value
wscript.echo "Quote for CRM = " & env.Parameters.Item(0).Value
Running this code generates this output [obviously the actual value will be different when you run it !]
Microsoft (R) Windows Script Host Version 5.6 Copyright (C) Microsoft Corporation 1996-2001. All rights reserved. Quote for CRM = 18.39Congratulations, you've just writen your first SOAP client, and not a single angle bracket in sight! Simple eh ?, no messing around with XML, all the grungy stuff is safely hidden away !
http.SetProxy "localhost", 8080Re-running the script should give the same results, but now you'll see that proxyTrace has an item in the left hand list view. Click on the item in the list, the right hand view will change to show the request [at the top], and the response [at the bottom]
 
Copyright © Simon Fell, 2000-2004. All rights reserved.