Wcf “EndpointDispatcher上的AddressFilter不匹配”
我试图通过使用SOAP1.2消息连接到一些WCFWeb服务来扩展一个经典的ASP站点。因此,在客户端,没有绑定,我只是使用XMLHTTP 由于EndpointDispatcher中的AddressFilter不匹配,我收到了无法在接收方处理带有To的消息的可怕消息。错误 我的客户机正在使用自签名SSL证书,并且服务端也设置了SSL证书 此问题的大多数解决方案都涉及在客户端上配置ServiceBehavior以关闭地址筛选器,但这在本例中不适用。有什么帮助吗 代码 我用VBScript创建了一个类Wcf “EndpointDispatcher上的AddressFilter不匹配”,wcf,soap,vbscript,asp-classic,Wcf,Soap,Vbscript,Asp Classic,我试图通过使用SOAP1.2消息连接到一些WCFWeb服务来扩展一个经典的ASP站点。因此,在客户端,没有绑定,我只是使用XMLHTTP 由于EndpointDispatcher中的AddressFilter不匹配,我收到了无法在接收方处理带有To的消息的可怕消息。错误 我的客户机正在使用自签名SSL证书,并且服务端也设置了SSL证书 此问题的大多数解决方案都涉及在客户端上配置ServiceBehavior以关闭地址筛选器,但这在本例中不适用。有什么帮助吗 代码 我用VBScript创建了一个类
Class SOAPRequest
Private objXMLHttp, webServiceURL, contentType
Public servicePath, XmlNS, action, SOAPRequest, SOAPResponse
Private Sub Class_Initialize
set objXMLHttp = Server.CreateObject("MSXML2.XMLHTTP")
webServiceURL = Application("Web Service URL")
contentType = "application/soap+xml;charset=UTF-8"
End Sub
Public Function SendRequest
'Open HTTP connection
objXMLHttp.Open "POST", webServiceURL & "/wcf/" & servicePath, False
'Setting request headers
objXMLHttp.setRequestHeader "Content-Type", contentType
objXMLHttp.setRequestHeader "SOAPAction", webServiceURL & "/wcf/" & servicePath & "?wsdl"
dim SOAPEnvelopeStart, SOAPEnvelopeEnd
SOAPEnvelopeStart = "<?xml version='1.0' encoding='utf-8'?><soap:Envelope xmlns:soap='http://www.w3.org/2003/05/soap-envelope' xmlns:urn='" & XmlNS & "'><soap:Header/><soap:Body>"
SOAPEnvelopeEnd = "</soap:Body></soap:Envelope>"
'Send SOAP request
objXMLHttp.Send SOAPEnvelopeStart & SOAPRequest & SOAPEnvelopeEnd
'Get XML Response
SOAPResponse = objXMLHttp.ResponseText
End Function
Public Function Close
Set objXMLHttp = Nothing
End Function
End Class
然后我这样称呼它
set objSOAP = New SOAPRequest
'set up the request
with objSOAP
.servicePath = "myservice.svc"
.XmlNS = "urn:MyNamespace"
.action = "Action"
.SOAPRequest = "<urn:GetMyData></urn:GetMyData>"
end with
objSOAP.SendRequest
我的建议是编写一个.NET客户端来调用该服务,然后使该客户端COM可见。经典的ASP可以简单地调用COM对象并感到高兴。而且您不必手工构建XML。@John谢谢,我知道您在那里做了什么我甚至可以自动生成那些.NET客户端。是的,您可以自动生成它们。COM可见性所需的属性可能放置在另一个类部件的分部类中。