<glbdev@gmail.comwrote in message
news:1177192579.567005.51270@l77g2000hsb.googlegro ups.com...
Quote:
I need to pull items out of an XML feed.
>
Here is an example of the XML file:
- <TopNode>
- <XmlFeed>
- <GetListInCategory>
- <Data Count="937">
- <Table>
<EventID>567343</EventID>
<Event>NHL playoffs</Event>
<Date>2007-04-21T00:00:00.0000000-05:00</Date>
<Time>10:00 PM</Time>
<CategoryID>26</CategoryID>
<HeadlinerID>101828</HeadlinerID>
<VenueID>115920</VenueID>
</Table>
</data>
</GetListInCategory>
</TopNode>
>
I need to pull each item out of the <TABLEnode, such as
<CategoryID>. The current code I am using now pulls ALL the data but
I cannot access the invidual elements.
>
Here is my current code:
>
dim objHTTP
dim objXML
set objHTTP = Server.CreateObject("Microsoft.XMLHTTP")
|
Don't use the XMLHTTP in ASP it's not threadsafe. Use:-
Set objHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0")
Quote:
objHTTP.open "GET","https://secure.myxmlfeed", false
objHTTP.send
|
Quote:
set objXML = server.CreateObject("microsoft.xmldom")
objXML.async=false
objXML.load(objhttp.responsebody)
|
If the remote source is behaving itself and sending a content-type header
with the value "text/xml" then you need only:-
Set objXML = objHTTP.ResponseXML
Quote:
Response.Write(objxml.xml)
>
Can anyone tell me how to do this?
|
Dim oTable
Dim oNode
Set oTable =
objXML.selectSingleNode("/TopNode/XMLFeed/GetListInCategory/Data/Table")
For Each oNode In oTable.selectNodes("*")
Response.Write oNode.tagName & " = " & oNode.Text & "<br />"
Next