2011-10-19 4 views
0

Je veux utiliser jQuery pour consommer un flux RSS, puis créer du contenu HTML qui définira les éléments dans le flux RSS. C'est assez facile pour moi de le faire. Cependant, je souhaite également que ma page soit automatiquement mise à jour si la source fournissant le flux RSS change.Comment consommer et afficher un flux RSS en utilisant jQuery

Par exemple, supposons que le chargement de la page intial consomme le flux RSS et il contient deux éléments: {George Washington et John Adams}

La page crée alors deux éléments HTML (balises d'ancrage, divs, peu importe) cet affichage "George Washington" et "John Adams". Trente secondes plus tard, la source qui fournit le flux RSS contient maintenant trois éléments: {George Washington, John Adams et Thomas Jefferson}. Comment régler ma page pour qu'elle sache que le flux RSS a changé et qu'elle doit actualiser/recréer les éléments HTML pour refléter ce changement?

La réponse la plus évidente est d'utiliser window.setInterval et de demander à la page de vérifier le flux RSS à intervalles réguliers pour voir si elle a changé. Mais j'ai l'impression qu'il me manque quelque chose et qu'il y a une meilleure façon de le faire.

Toutes les idées seraient grandement appréciées. Mon ignorance est stupéfiante quand il s'agit du monde du flux RSS/Atom, alors ne présumez pas que je le sais déjà (parce que je ne le suis probablement pas!) Et donnez-moi votre aide!

Répondre

0

Si vous ne pouvez pas obtenir un rappel lorsque le flux est mis à jour, ce que le propriétaire du flux doit fournir, et qui nécessiterait une solution côté serveur comme Node.js pour renvoyer le rappel au client, le setInterval la manière est la seule manière.

Ce que vous pouvez faire, pour éviter de charger le flux entier à chaque vérification, vous pouvez d'abord faire une demande HEAD et vérifier si la était différente de la dernière demande. Gardez à l'esprit ceci suppose quelques choses, comme cela Content-Length sera retourné et qu'il va toujours augmenter (si le flux ne renvoie que quelque chose comme les 10 derniers éléments, alors théoriquement, bien que peu probable, vous pourriez obtenir le même même s'il y avait un nouvel article).

+0

Donc, est-ce typiquement ce que le paramètre de rappel est que je vois sur beaucoup de plugins RSS qui sont là-bas? J'ai trouvé bizarre que tous les plugins que j'avais examinés n'avaient pas de moyen de se mettre à jour automatiquement quand le RSS changerait. Mais maintenant je pense que j'ai peut-être mal compris comment fonctionnent les différents plugins. – Jagd

+0

Peut-être. Je ne suis même pas sûr de ce que vous entendez par "plugin RSS". La documentation spécifique pour chacun d'entre eux pourrait aider. –

+0

Juste différents plugins jQuery pour RSS que j'ai regardé. Certains d'entre eux ont des paramètres "callback url". – Jagd

Questions connexes