求VBS调用Webservice接口的代码,谢谢!
本帖最后由 tanky 于 2012-11-21 10:56 编辑先分享一段代码:Set osoap=CreateObject("MSSOAP.SoapClient")
oSoap.ClientProperty("ServerHTTPRequest") = True
oSoap.mssoapinit("http://fy.webxml.com.cn/webservices/EnglishChinese.asmx?wsdl")
set result=oSoap.Translator("test")
msgbox result(1).Text
我本机测试成功,需要安装msSoapToolkit20.exe。
问题是同样的代码调用公司内部一个java实现的Webservice接口(入参是XML),会报错:no SOAPAction header!
求帮助... 不用MSSOAP也行,有其他方式实现的代码吗? QTP中的CreateObject方法是继承的VBScript语言中的CreateObject方法,能调用外部的ActiveX服务。所以要求必须是com组件,一个java编写的service,不可能是com组件,也就不可能通过CreateObject调用。 QTP中的CreateObject方法是继承的VBScript语言中的CreateObject方法,能调用外部的ActiveX服务。所以要求必 ...
jack_loo 发表于 2012-11-21 15:55 http://bbs.51testing.com/images/common/back.gif
那有什么别的方案没? java写的东西都是可以通过vbs文件启动的,QTP可以直接执行VBS文件。executefile java写的东西都是可以通过vbs文件启动的,QTP可以直接执行VBS文件。executefile
jack_loo 发表于 2012-11-21 16:49 http://bbs.51testing.com/images/common/back.gif
我在QTP10上装了9.2的Webservice插件,程序菜单里面多了一个Microsoft SOAP Toolkit Version 3。所以QTP去访问Webservice接口应该用的就是MSSoap。我前面的代码也是用的这个。可能是我写法上面有问题,导致调取失败。而通过插件去调取同样的接口又是成功的。 本帖最后由 泰然 于 2012-11-22 10:14 编辑
哦。是我理解错你的意思了,我以为你们公司用java做了一个代替msSoapToolkit20.exe功能的产品,你想用那个产品来远程调用webservice呢。那是不能通过CreateObject的。
通过msSoap远程调用,有时需要设置调用参数,你也说了是个xml。
oSoap.ConnectorProperty(具体输入参数名) = 输入参数,具体名称和内容需要向开发人员了解一下。
还有,Translator这个方法是访问这个SOAP“oSoap.mssoapinit("http://fy.webxml.com.cn/webservices/EnglishChinese.asmx?wsdl")”中提供的方法,当你远程调用那个java写的webservice时,你需要使用那个soap中提供的方法,至于那个soap提供了哪些方法,看开发提供的接口设计文档。
页:
[1]