The VBScript Network and Systems Administrator's Cafe:

Web Service

Oct 16 2008   2:53AM GMT

Consuming and using a web service from within VBScript to create a WHOIS tool



Posted by: Jerry Lees
VBScript, SOAP, WSDL, web tools, web sites, Web Service, Web Pages

Recently I posted a list of web services at a site that were public web services, in the article entitled A Great list of FREE publicly available Web Services. In looking through them I noticed one that would be useful- a WHOIS web service!

Please keep in mind that this script uses a PUBLIC and FREE web service to preform the heart of it’s work… it might not be always available and that is out of both our control. However, the code will work, with minor changes where noted for any other web service.

First some background on a web service. When you consume (use) a web service, you call it like you would any other class or function, with a .functionname after the object is created as an instance.

The MSSOAP.SOAPClient line below creates a SOAP object, and the .MSSOAPINIT creates an instance of your web service in that object. Then, in this case the .whois  call actually makes it preform the functions on the remote system. The remote system then returns back the value from the function to you just as if a local function were called.

Pretty cool stuff! So, here is the code to call a web service from VBScript!
dim SOAPClient, Response
‘create the SOAP object
Set SOAPClient = createobject(”MSSOAP.SOAPClient”)
on error resume Next
‘create a instance of the WHIOIS web service
SOAPClient.mssoapinit(”
http://www.ecubicle.net/whois_service.asmx?WSDL“)
  ‘ check for errors… deal with them if they occur by reporting them
  if err Then
    wscript.echo SOAPClient.faultString
    wscript.echo SOAPClient.detail
  end If

‘this next line is where we actually CALL the web service
Response = SOAPClient.Whois(”whois.networksolutions.com”, 43, “networksolutions.com”)

‘fix up network solutions’ HTML responses to whois queries. why do they have to be difficult?
Response = replace(Response,”<br/>”,VbCrLf)
Response = replace(Response,”<BR/>”,VbCrLf)

‘ echo the response recieved (since it’s a string)
wscript.echo Response

‘ check for errors… deal with them if they occur by reporting them
  if err Then
    wscript.echo SOAPClient.faultString
    wscript.echo SOAPClient.detail
  End If

Oct 10 2008   7:57PM GMT

A Great list of FREE publicly available Web Services



Posted by: Jerry Lees
SOAP, WSDL, web tools, web sites, Web Service, webmaster, Web Pages

As an IIS Administrator I have spent quite a bit of time administering web sites and web services in my role where I work. Recently, I have been doing some work with Web Services in IIS to actually monitor them since we needed to do more than just simply monitor the Web Service Definition Language (WSDL) page.

For those of you who do this sort of work, you know this is a real challenge sometimes, since the web service can actually be broken– but the WSDL page shows up. So, I had to create something to actually consume the web service so that we could truely test the web service.

Web Services are basically (yes, I’m boiling it down to the bare minimum here…) web sites that accept input via the HTTP protocol, preform work based on those parameters, and return back some value via HTTP. Just like a FUNCTION! This is an exciting technology, becasue it essentially is distributed computing.

This caused me to look for public web services, again, because I was interested in the concept since I first heard about it 4 or 5 years back. I found a decent site that had a list of web services that were available on the internet at Xmethods.net. While they all aren’t free (and they all didn’t appear to be operational) — it did seem like a decent list of sometimes useful stuff to have handy.

Having found this, I can now share the consumption of web services from VBScript with you in another blog posting– Consuming and using a web service from within VBScript to create a WHOIS tool.