Achim: Performance XML mit javascript auslesen

Hallo,

ich lese ein xml-file via js aus, hier mein code :

xml_dokument = new ActiveXObject("Microsoft.XMLDOM");
lade();
}
function lade()
{
//var url = "cosinus.xml"
var url = "http://cosinus.fin-nrw.de/cognos/cgi-bin/upfisapi.dll?xmlcmd=<describeUser><Module%20Name='SignonID'/></describeUser>"
xml_dokument.load(url);

Wenn ich eine auf der lokalen Platte abgelegte Datei auslese, funktioniert alles wunderbar schnell, wenn ich jedoch das xml-file aus der url lese brauche ich ca. 20 sek. Dafür habe ich mir eine Verzögerungsfunktion gebaut, die das Script entsprechende Zeit aufhält. Dann kommt im IE irgendwann der Hinweis, dass ein Skript eine Verzögerung verursacht. Wird das Skript dann fortgesetzt (klick auf "Nein") funktioiert alles korrekt.

Führe ich den url auf das xml-file manuell aus, dauert der Aufruf < 1 sek. Woran könnte der zeitliche Unterschied zwischen manuellen Aufrufs und Aufruf via js liegen ?

Vielen Dank für jeden Hinweis,
Achim

  1. zu dem Code sage ich mal nichts.

    Wenn ich eine auf der lokalen Platte abgelegte Datei auslese, funktioniert alles wunderbar schnell, wenn ich jedoch das xml-file aus der url lese brauche ich ca. 20 sek. Dafür habe ich mir eine Verzögerungsfunktion gebaut, die das Script entsprechende Zeit aufhält.

    Wo hast du eine Verzögerunfsfunktion eingebaut? Im JS? Dann wäre der Hinweis eine Selbstverständlichkeit oder möchtest du dass dein Browser nicht mehr bedienbar ist, weil irgendein verrückter JS Programmierer das gerne so hätte?

    Struppi.

    1. zu dem Code sage ich mal nichts.

      lass dich ruhig aus ;-) ich programmiere nicht regelmäßig und schon gar nicht js. den Code habe ich aber aus einem tutorial...

      Wo hast du eine Verzögerunfsfunktion eingebaut? Im JS? Dann wäre der Hinweis eine Selbstverständlichkeit oder möchtest du dass dein Browser nicht mehr bedienbar ist, weil irgendein verrückter JS Programmierer das gerne so hätte?

      richtig, die Verzögerunsfunktion, ist im js-code abgelegt. Ohne diese Funktion bekomme ich eine Fehlermeldung, die besagt, dass die erforderlichen Daten noch nicht zur Verfügung stehen (d.h. für mich, dass das xml-file noch nicht geladen werden konnte).

      Gruß,
      Achim

      1. richtig, die Verzögerunsfunktion, ist im js-code abgelegt. Ohne diese Funktion bekomme ich eine Fehlermeldung, die besagt, dass die erforderlichen Daten noch nicht zur Verfügung stehen (d.h. für mich, dass das xml-file noch nicht geladen werden konnte).

        und für mich, dass du einen Fehler bei der Pogrammierung des Events gemacht hast.

        Struppi.

        1. und für mich, dass du einen Fehler bei der Pogrammierung des Events gemacht hast.

          ok, verrätst Du mir auch welchen Fehler, oder benötigst du mehr Info ?

          falls das hilft: das js-script wird über <body onload="jsfuntion()">
          aufgerufen.

          Danke, Achim

          1. und für mich, dass du einen Fehler bei der Pogrammierung des Events gemacht hast.

            ok, verrätst Du mir auch welchen Fehler, oder benötigst du mehr Info ?

            Ja.

            falls das hilft: das js-script wird über <body onload="jsfuntion()">
            aufgerufen.

            die Art und weise wie du lädst ist mir unbekannt, ich kenne nur die Variante (schematisch):

            if (window.XMLHttpRequest)  http_request = new XMLHttpRequest();  
            else if (window.ActiveXObject) http_request = new ActiveXObject("Microsoft.XMLHTTP");  
            http_request.onreadystatechange = ready;  
            http_request.open('GET', url + '?' + Math.random(), true);  
            http_request.send(null);  
            
            

            Struppi.