2010-09-21 63 views
0

我需要从我的传统ASP网站调用Web服务。我已经提供了一个网址,并从SOAP提供三个变量:如何将参数传递给经典asp中的soap

Web服务的URL:http://www.theirwebsite.co.uk/B2bservice.asmx 参数1:CUSTID 参数2:PWORD 参数3:OrderNo

所以我应该把这个SOAP请求从我的经典ASP网站,以及参数值(我已经给出),它应该返回一个字符串。

我已经使用soapclient.com测试了SOAP响应,果然如果我输入Web服务URL并添加参数值,它会返回一个字符串,就像它应该那样。

问题是我只是无法找到如何做到经典的ASP!我发现了很多从传统ASP调用SOAP URL的例子,但是没有一个提到如何传递参数。

有人能告诉我一个简单的尽可能实现我如何从ASP中的这个Web服务获取返回字符串,传递参数?

许多在此先感谢您的帮助。

+0

如果您未传递参数,您将如何调用服务? – 2010-09-21 17:57:09

回答

0

我不太了解经典ASP,不知道它是否有SOAP客户端实现,但如果传统的ASP允许您发送带有任意主体和任意HTTP头的HTTP POST,应该可以做你想做的事情(以一种有点冒险的方式)。

只需发出一个POST请求,整个SOAP消息都是硬编码的,除了参数。确保正确地获得Content-Type和SOAPAction标头。

如果您不知道如何正确创建有效的SOAP消息并正确设置标题,请使用http://web.progress.com/en/actional/actional-diagnostics.html之类的工具发送测试消息,然后使用Fiddler这样的工具来查看实际的内容发送,然后将其硬编码到您的应用中。

+0

谢谢,显然有一种方法可以在经典ASP中执行它,但它似乎不起作用: <% url =“http://www.webservice.co.uk/B2bservice.asmx?wsdl “ 组XMLHTTP =的CreateObject(” MSXML2.ServerXMLHTTP “) xmlhttp.open ”GET“,网址,假 xmlhttp.setRequestHeader ”内容类型“, ”应用程序/ x WWW的形式进行了urlencoded“ xmlhttp.send” Ccode = MyCode&Pword = MyPassword&OrderNo = 1234“ Response.write xmlhttp.responseText set xmlhttp = Nothing %> – Dan 2010-09-22 12:14:53

1

Dan,您必须更改POST的GET