steve: XML mit ASP auslesen

Guten Tag,

ich will eine Webseite aufrufen, die mir ein XML-codiertes Ergebnis zurückliefert.
Weiterhin möchte ich dieses dann verarbeiten, also verschiedene Daten daraus abspeichern.

Ich habe folgendes probiert, hänge dann aber bei der Weiterverarbeitung (in url steht die Adresse der aufzurufenden Webseite):

Set objHTTP = Server.CreateObject("XStandard.HTTP")
  objHTTP.Get url

Jetzt habe ich zwar die Daten, aber WO? Also wie greife ich jetzt darauf zu und kann die weiterverarbeiten?
Oder sollte ich ein anderes Objekt als "XStandard.HTTP" verwenden, welches evtl. mehr Funktionalität zur Verfügung stellt?

Vielen Dank
Steve

  1. Nachtrag: ich habe sowas schon mal gemact mit dem "XStandard.HTTP", da habe ich aber das Ergebnis von "objHTTP.Get url" mittels "objHTTP.SaveResponseToFile" erst in eine Datei geschrieben, diese dann per "Server.CreateObject("Microsoft.XMLDOM")" und "XMLDoc.load" geöffnet und dann verarbeitet.
    Das Zwischenspeichern muss doch aber auch zu umgehen sein, oder?

    Vielen Dank
    Steven

  2. Hello,

    na ja, googleln und etwas in der API wühlen ist meistens mal eine gute Idee, dann findest du z.B. dieses Beispiel.

    MfG
    Rouven

    --
    -------------------
    Buy when there's blood running in the street and sell when everyone is pounding at your door, clawing to own your equities  --  Wisdom on Wallstreet
    1. na ja, googleln und etwas in der API wühlen ist meistens mal eine gute Idee, dann findest du z.B. dieses Beispiel.

      Hm, danke fuer die Info.
      Hab es mir mal angeschaut, bekomme es einfach nicht hin.
      Ein Beschreibung der API find ich nicht.

      Ich kann zwar das ausfuehren, aber bei der Weiterverarbeitung treten Fehler auf. Wie kann ich denn feststellen, was in dem geholten Objekt steht?
      Z.B. gibt mir "response.write objHTTP.ResponseAsXML" etwas aus, das sieht aber nicht allzu XML-formatiert mehr aus :-(

      Vielen Dank
      Steve

      1. Hello,

        Ich kann zwar das ausfuehren, aber bei der Weiterverarbeitung treten Fehler auf. Wie kann ich denn feststellen, was in dem geholten Objekt steht?
        Z.B. gibt mir "response.write objHTTP.ResponseAsXML" etwas aus, das sieht aber nicht allzu XML-formatiert mehr aus :-(

        sondern?
        Da ich nichts vergleichbares am Laufen habe müsstest du schon etwas genauer beschreiben, was damit nicht in Ordnung ist. U.U. liegt es daran, dass die Webseite so ungültig ist, dass der XML-Writer nichts retten kann?!

        MfG
        Rouven

        --
        -------------------
        He is entertaining both out of the car and in the car because if you tell him that a corner is almost flat then he is the guy who is going to try to take it flat even if it means shunting it the other side of it, he will come with the data and say 'hey, I may have crashed and destroyed the car, but I was flat-out'. That is an interesting quality that he has!  --  Team Member on Jacques Villeneuve
        1. Da ich nichts vergleichbares am Laufen habe müsstest du schon etwas genauer beschreiben, was damit nicht in Ordnung ist. U.U. liegt es daran, dass die Webseite so ungültig ist, dass der XML-Writer nichts retten kann?!

          Also ich hab es jetzt soweit:

          set objHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP")
           objHTTP.open "GET", URL, false
           objHTTP.send
           GetURL = objHTTP.responseText

          Wenn ich mir GetURL ausgeben lasse, kommt da jetzt auch etwas zurueck. Auch mit den XML-Markierungen.

          Ich gehe jetzt einmal davon aus, dass das Holen der Webseite geklappt hat. Jetzt muss ich das Geholte weiterverarbeiten. Das versuche ich hiermit:

          Set XMLDoc = Server.CreateObject("Microsoft.XMLDOM")
           XMLDoc.async = False
           XMLDoc.load(GetURL)
           Dim  rootNode, item
           Set rootNode = XMLDoc.documentElement
                  rekurs(rootNode)

          Function rekurs(knoten)
                     For Each author in knoten.childNodes
                     ...

          Hier tritt dann ein Fehler auf.
          "Object required: 'knoten'"
          Wegen dem Fehler denke ich, dass die Anweisung "Set rootNode = XMLDoc.documentElement" nicht geklappt hat bzw. dass rootNode leer ist.

          Weiterhin habe ich das Problem, das XML-Verarbeitung recht neu für mich ist, ich somit nicht weiß, wonach ich bei Problemen suchen muß. Oder wie ich mir z.B. Variablenbelegungen ausgeben kann.
          Ich selbst dachte immer, dass die XML-Verarbeitung recht einfach und fortgeschritten ist, da XML ja eines der wichtigsten Datenformate  der letzten Jahren ist. Wahrscheinlich habe ich ein großes Verständnisproblem, da mir die Verarbeitung der Daten in verschiedenen Beispielen recht kompliziert aussieht (Rekursivität ...). Oder gibt es eine Möglichkeit auf die Daten, wie auf ein Objekt zuzugreifen? Also z.B. ich bekomme die Anzahl der zurueckgelieferten Elemente und kann dann per author[x] auf die Werte zugreifen?

          Vielen Dank
          Steve