我需要从我的VB6程序使用外部web服务。如果可能的话,我希望能够在没有SOAP工具包的情况下部署我的程序,但这不是必需的。我没有web服务源,也不是我创建的。它是供应商提供的服务。
那么,在SOAP工具包之外,使用来自VB6的web服务的最佳方式是什么?
发布于 2008-09-23 19:39:43
我使用此函数从web服务获取数据。
Private Function HttpGetRequest(url As String) As DOMDocument
Dim req As XMLHTTP60
Set req = New XMLHTTP60
req.Open "GET", url, False
req.send ""
Dim resp As DOMDocument
If req.responseText <> vbNullString Then
Set resp = New DOMDocument60
resp.loadXML req.responseText
Else
Set resp = req.responseXML
End If
Set HttpGetRequest = resp
End Function发布于 2008-09-23 18:06:16
.NET从一开始就对Web Services有很好的支持,因此您可以在.NET中将Web Service客户端逻辑开发为.dll库/程序集,并通过COM Interop在VB6应用程序中使用它。
发布于 2008-09-23 18:01:19
假设您运行的是Windows XP Professional或更高版本,一种有趣的方法是使用SOAP名字对象。这里有一个例子,取自一些MSDN页面。我不知道这项服务是否有效,但你明白我的意思了……
set SoapObj = GetObject
("soap:wsdl=http://www.xmethods.net/sd/TemperatureService.wsdl")
WScript.Echo "Fairbanks Temperature = " & SoapObj.getTemp("99707")这种机制也适用于VBScript。这很好。
https://stackoverflow.com/questions/122607
复制相似问题