Frage

Kann ein RSS-XML-Feed von Yahoo JavaScript laden?

Sie clientseitige JS 3rd-Party-Domains?

zugreifen darf
War es hilfreich?

Lösung

Sie können die Technik in meinem Blogbeitrag skizziert verwenden Unwritten Leitfaden für Yahoo Query-Langauge

Sie würden die XML-Datentabelle mit einem yql statment wie diese Abfrage:

select * from xml
  where url="http://path/to/xml
Dann würden Sie einen Skript-Tag, um Ihre HTML hinzufügen mit einer src http://query.yahooapis.com/v1/public/yql?q={your yql hier (mit document.createElement ( ‚script‘) durchgeführt werden)} & format = json & Callback = {Ihre Funktion hier} wo {Ihr yql hier} mit einer Version URI Encoded ist ersetzen von Ihnen yql statment.

Andere Tipps

Eine einfache Möglichkeit, dies zu tun, ist die Anfrage durch den Server-Proxy, der Ihre Seite befindet sich auf. Die Schritte sind:

  1. eine serverseitige Skript schreiben führt eine HTTP-Anfrage auf dem RSS-Feed, wenn das Skript selbst Anfrage (das heißt über bekommen oder Post) ist
  2. Verwenden Sie Ajax die Server-seitige Skript zu beantragen, oder es nur für die Seite aus dem Haupt Skript aufrufen.
  3. Der Server-Seite Skript gibt dann die Zufuhrquelle in irgendeiner darstellbaren Form.
  4. Profit!

Auf IE 8 und FF 3.1 (nicht sicher), ist es möglich, diese Anforderungen durch spezielle Cross-Site-Anrufe zu tätigen, aber die letzte Generation von Browsern immer noch zu Problemen führen. Siehe auch:

http://dannythorpe.com/ 2009/01/15 / IE8-Cross-Domain-Anfrage-support-Demo / http://ejohn.org/blog/cross-site-xmlhttprequest/ Eigenschaft in FF beschränkt ist 3,0, unklar, ob es in 3.1 kommt wieder

jedoch über die Schritte sind nicht garantiert in Konflikt geraten jedem Browser CSS Sicherheit, auf Kosten einer gewissen Verzögerung und zusätzlichen hw Last auf dem Server ausgeführt werden.

Sie können die Google API RSS Feed in JavaScript aus einer beliebigen Domäne / Server zu laden . Mehr als nur ein Proxy dient es tatsächlich die RSS-Inhalte aus den Google-Cache stattdessen den ursprünglichen Servers des Schlagens. Dies könnte lebensrettend für kleine Server, die Slashdot nicht umgehen können Verkehrsspitzen.

ich verwenden, um den Feed-API für einen Cross-Site RSS-Zugang in einem Artikel über Silverlight vor einigen Jahren.

Ich bin nicht sicher über JS, aber ich weiß, dass Sie eine Google APIs verwenden können, , und sie haben einen RSS-Reader. Ich weiß, das ist wahrscheinlich nicht das, was Sie wollen, aber wenn Sie durch die Dokumentation lesen können Sie in der Lage sein, Ihre Antwort zu bekommen, wie es funktioniert.

Nicht direkt. Sie können von einem Script-Tag Sie injizieren in dem DOM Dana Vorschlag von proxing die Anforderung, oder schauen Sie in ein Verfahren namens JSONP, die im Wesentlichen umhüllt das zurück JSON-Objekt in einer benutzerdefinierten Callback-Funktion, die angeforderte verwenden. Die meisten API-Anbieter unterstützen diese (einschließlich Yahoo APIs).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top