首先,这是我关于网络服务的第三个问题,我非常感谢guyz帮助我,但是有些东西丢失了,这是不对的 这是我从我的一个问题中得到的代码
Set oXmlHTTP = CreateObject("Microsoft.XMLHTTP")
oXmlHTTP.Open "POST", "http://www.oursite.com/WebServices/ourService.asmx?WSDL", False
oXmlHTTP.setRequestHeader "Content-Type", "application/soap+xml; charset=utf-8"
oXmlHTTP.setRequestHeader "SOAPAction", "http://ourNameSpace/ourFunction"
SOAPRequest = _
"<?xml version=""1.0"" encoding=""utf-8""?>" &_
"<soap12:Envelope xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"" xmlns:soap12=""http://www.w3.org/2003/05/soap-envelope"">" &_
"<soap12:Body>" &_
"<ourFunction xmlns=""http://ourNameSpace/"">" &_
"<var1>" & Session("userid") & "</var1>" &_
"<var2>" & Session("internetid") & "</var2>" &_
"</ourFunction>" &_
"</soap12:Body>" &_
"</soap12:Envelope>"
oXmlHTTP.send SOAPRequest
现在我的网络服务链接
http://buergerserviceschul.niedersachsen.de/modules/id/public/webservice/V4_00/rpc_lit/?wsdl
当我打电话给提供所有细节和所有必要内容的网络服务时,我仍然无法从这个程序中得到任何令人沮丧的输入。 我的意思是我什么也得不到,我得到了空洞的回答,而如果我使用旧的方式,我建议不要使用肥皂客户端,即
Set oSOAP = Server.CreateObject("MSSOAP.SoapClient30")
oSOAP.ClientProperty("ServerHTTPRequest") = True
现在通过这种方式我至少得到一个会话ID,但即使使用这个程序,我再也无法走得更远 所以guyz我坚持这个问题
我需要调用函数并获取xml作为回报,但我没有得到任何回报
我是如何调用该服务使其不响应,但如果是这种情况那么它会给出错误,因为如果我在代码中做任何错误就会发生错误。
在这方面如此友好地帮助我 我非常感谢你的帮助。 感谢
答案 0 :(得分:2)
不要使用“?WSDL”。这只是为了检索WSDL。
此外,即使在VBSCRIPT中,也不要永远通过字符串连接来构建XML。始终使用XML API来创建XML。
我认识到很多人仍在使用Classic ASP别无选择。 (*)仍然,你应该欢迎任何机会不写更多的VBSCRIPT,有人必须维护(甚至你)。相反,编写一小段C#代码将Web服务公开为COM对象。您可以使用常规的“添加服务引用”技术,但VBSCRIPT会将其视为普通的COM对象。我会看看能否找到一个例子。
(*)也许如果我们开始称它为“糟糕,臭,ASP”,管理层会更快地摆脱它吗?但也许不是,然后我们会被这个名字所困扰。
答案 1 :(得分:0)
“http://www.oursite.com/WebServices/ourService.asmx?WSDL”
带
答案 2 :(得分:0)
最终我同意John,在VBScript中做这件事,使用C#dll来完成工作并在ASP中公开COM接口。
但是你可能会考虑一些事情。首先不要使用Microsoft.XMLHTTP它不是线程安全的。请改用CreateObject("MSXML2.ServerXMLHTTP")
。
使用Fiddler诊断出错的地方。使用SOAP启动fiddler然后发出
ProxyCfg -u
命令行上的。您将在fiddler中看到服务器之间的确切对话。如果您有另一个此SOAP接口示例正常工作,请使用fiddler检查该会话的HTTP会话。
现在切换到新代码并检查由此生成的请求。您应该能够从这些数据中确定您需要对标题和XML进行哪些更改。
请记得发出
Proxycfg -d
关闭小提琴手之前。