Ich habe die Google Feed-API zum Laden von RSS-Feeds verwendet, aber es scheint, als hätte Google die API heruntergefahren. Wenn ich beispielsweise versuche, den RSS-Feed der New York Times unter http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=1000&q=http%3A%2F%2Frss.nytimes.com%2Fservices%2Fxml%2Frss%2Fnyt%2FHomePage.xml
zu laden, erhalte ich die folgende Antwort:
{"responseData": null, "responseDetails": "This API is no longer available.", "responseStatus": 403}
Gibt es mögliche Alternativen?
Verwenden Sie Yahoo YQL API :
select * from xml where url = 'https://news.ycombinator.com/rss'
Sie können einen JSONP-Feed anfordern, indem Sie der URL einen callback
-Parameter hinzufügen
https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20xml%20where%20url%20%3D%20'https%3A%2F%2Fnews.ycombinator.com%2Frss'&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=mycallback
Veraltet
Meinplugin , $ .jQRSS verwendet Google Feed
und scheint mit Ihrem RSS - Link gut zu funktionieren :
var rss = 'http://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml';
$.jQRSS(rss, { count: 8 }, function (feed, entries) {
console.log([feed, entries]);
$.each(entries, function(i) {
if (this['content']) {
var fieldset = $('<fieldset/>', { title: this.contentSnippet }).appendTo('body'),
legend = $('<legend/>').appendTo(fieldset),
$link = $('<a />', { href: this.link, html: this.title, target: '_blank' }).appendTo(legend),
$date = $('<h5 />', { html: this.publishedDate }).appendTo(fieldset),
$content = $('<div />', { html: this.content }).appendTo(fieldset);
$content.find('br').remove();
}
});
});
fieldset > h5 { float: right; margin-top: 0; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="http://rawgit.com/JDMcKinstry/jQRSS/master/jQRSS.js"></script>
Eine Ergänzung zu Tonys Lösung für die Verwendung von YQL - Ich musste den Rückrufwert in JSON_CALLBACK ändern , um die Antwort richtig zu analysieren:
'https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20xml%20where%20url%20%3D%20\'' + encodeURIComponent(url) + '\'&format=json&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys&callback=JSON_CALLBACK'
Sie können den Script-Feedburner verwenden:
<script src = "http://feeds.feedburner.com/feeduri?format=sigpro&nItems=10" type = "text/javascript"> </ script>
Alle Informationen:
Sie können PHP verwenden, um eine Kopie des RSS-Feeds zu erhalten, den Sie anzeigen möchten, und verwenden Sie clientseitiges JavaScript, um die Ergebnisse anzuzeigen. Der Hauptvorteil besteht darin, dass Sie keinen täglichen Anforderungsbeschränkungen unterliegen, die die meisten kostenlosen RSS-API-Dienste aufweisen, oder Zuverlässigkeitsprobleme.
http://www.javascriptkit.com/dhtmltutors/ajaxticker/index.shtml