steckl: ajax: externe Seite mit http-request aufrufen

Beitrag lesen

Hallo,

ich habe mal angefangen mich etwas mit ajax zu beschaeftigen und wollte dabei den Inhalt einer Seite, die nicht auf meinem Server liegt in eine Variable schreiben.

Wenn die Seite auf meinem Server liegt klappt alles wunderbar. Auch wenn ich den Pfad mit "http://MEIN_SERVER/meineSeite.html" angebe.
Wenn ich aber jetzt eine externe Seite (z.B. http://www.google.de") angebe kommt im FF 1.5 eine Fehlermeldung in der Javascript-Console:
uncaught exception: Permission denied to call method XMLHttpRequest.open
im IE 6 funktioniert das Script fehlerfrei.
Dies liegt wohl an den unterschiedlichen Sicherheitseinstellungen?

Jetzt wuede mich interessieren, ob es irgendwie moeglich ist, eine externe Seite mit Javascript/Ajax auszulesen, ohne von den Sicherheitseinstellungen des Browsers abhaengig zu sein.
Oder brauche ich dazu eine serverseitige Technik wie CGI/Perl, um an die Daten zu gelangen?

Ein Workaround waere vielleicht, mit ajax ein Perlscript aufzurufen, das eine lokale Kopie der externen Seite erstellt und diese danach einliest. Aber das waere wohl fuer den Anwender genau so (un)sicher, wie wenn die Seite gleich von ihrem aktuellem Standort aus geoeffnet wuerde oder?

Mein Code sieht momentan so aus:

  
      function getFileContent(file)  
      {  
       // creates a new XMLHTTP request  
       http_request = new createXMLHttpRequest();  
  
              document.getElementById("contentDiv").innerHTML = "laden ...";  
  
              // executes the XMLHTTP request  
       http_request.open("GET", file, true);  
  
              http_request.onreadystatechange = alertInhalt;  
  
              http_request.send(null);  
      }  

Das Beispiel habe ich aus einem Tutorial, wobei hier nur auf Dateien auf dem gleichen Server zugegriffen wurde. file ist die Seite die aufgerufen werden soll. Also z.B. "./test.html" (klappt) oder "http://www.google.de" (klappt nicht). http_request ist eine globale Variable.

Hoffe mir kann jemand helfen.
mfG,
steckl