我有以下代码从网络服务器中获取详细信息
<%@ LANGUAGE=VBScript%>
<%
vCustomerUserName = "name"
vCustomerPassword = "password"
vEventID = 123456
vEmail = "myname@me.com"
vPassword = "1122334455"
Response.Buffer=False
Dim MyConnection
Dim TheURL
''# Specifying the URL
dataURL = "http://www.regonline.com/authorization.asmx/authorizeMemberWithEmailAddress"
Set MyConnection = Server.CreateObject("Microsoft.XMLHTTP")
''# Connecting to the URL
MyConnection.Open "POST", dataURL, False
MyConnection.setRequestHeader "Content-type", "application/x-www-form-urlencoded"
''# Sending and getting data
strQueryString = "customerUserName=" & vCustomerUserName & "&customerPassword=" & vCustomerPassword & "&eventID=" & vEventID & "&emailAddress=" & vEmail & "&password=" & vPassword
''# MyConnection.Send
MyConnection.Send strQueryString
TheData = MyConnection.responseText
''# Set the appropriate content type
Response.ContentType = MyConnection.getResponseHeader("Content-type")
Response.Write (TheData)
Set MyConnection = Nothing
%>
如果我在浏览器中运行此页面,它将返回看似xml文档的内容。我需要做的是提取特定节点的值,然后以
的形式将其发送到浏览器response.write firstName=bob&lastName=smith
有谁能帮助我,这让我很生气,到目前为止已经花了很长时间才无处可去。我似乎无法从服务器访问作为xml文档的回复,并希望得到任何帮助。
由于
答案 0 :(得分:1)
您可以使用responseXML属性而不是responseText
。它是IXMLDOMDocument对象的实例。然后,您可以使用XPath通过selectSingleNode
方法选择所需的数据。
如果响应的内容类型未设置为text/xml
或application/xml
,则无效。如果是这种情况,您仍然可以使用MSXML将responseText加载到DOMDocument中并选择所需的数据。
需要注意的另一点是,通常不建议从服务器端应用程序使用XMLHTTP对象。它意味着从客户端使用,因为它取决于WinInet。您应该使用ServerXMLHttp代替。它具有相同的功能,但依赖于WinHTTP而不是WinInet。有关详细信息,请参阅FAQ。