molily: rss laden per httpRequest

Beitrag lesen

Hallo,

Nun möchte ich aber gern den Newsfeed von zdf.de laden. Dazu habe ich das Ganze, nachdem es mit meinem Ursprungs-Script nicht lief, in folgendes umkonstruiert:

url='http://www.zdf.de/ZDFmediathek/rss/4/0,4149,2351716,00.xml';

http.open("get", url);
http.setRequestHeader("Content-Type", "text/xml");

Ein Content-Type-Header bei einem GET-Request ist widersinnig.

Das kuriose dabei ist, das es im IE funktioniert. Jedoch nur mit einer komischen Sicherheitsmeldung, was auch nicht sein sollte.

Die sogenannte Same Origin Policy verhindert, dass ein JavaScript Daten von anderen Servern laden kann bzw. auf Dokumente von fremden Servern zugreifen kann. (Ausnahme: Mit <script> eingebundene Scripte.)

Sprich, mit XMLHttpRequest kannst du keine RSS-Feeds von beliebigen Servern laden, sondern nur exakt von dem Server, auf dem das JavaScript ausgeführt wird.

Du kannst höchstens ein (entsprechend geschütztes) Script auf deinem Server installieren, welches eine URL entgegennimmt, diese vom fremden Server abrufen und dann an den Browser weitergibt. Besonders für das Abrufen von RSS-Feeds gibt es schon einige Fertiglösungen - an den Browser wird dann aber letztlich kein bloßes RSS mehr gesendet. Online-Newsreader wie Bloglines und der Google Reader arbeiten ähnlich.

Mathias