Jaki jest najlepszy sposób na wykrycie, kiedy kanał został zaktualizowany? Załóżmy, że mam aplikację, która pobiera dane z kanału co 15 minut. Jak mogę się dowiedzieć, czy dodano nową zawartość? Kanały RSS i Atom.Wykrywanie nowych pozycji w kanale RSS
Odpowiedz
Każdy element w RSS 2 i Atom ma identyfikator GUID/ID, który może być oznaczony jako unikalny. Jeśli jest oznaczony jako unikalny, możesz go użyć do identyfikacji przedmiotów i dopasowania do poprzednich przedmiotów.
Sprawdź pola Last-Modified i ETag odpowiedzi http podczas żądania pola. Nawet lepiej, użyj tagów If-Modified-Since i If-None-Match w swoim żądaniu, a otrzymasz odpowiedź 304, jeśli kanał nie został zmodyfikowany. (patrz: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html)
Czy wszystkie kanały internetowe obsługują etaty? Czy etagi są łatwo czytane przez javascript? – haden
Używam Etags na moim projekcie, obliczonego w filtr serwletu, jak pokazano tutaj http://www.infoq.com/articles/etags
To będzie pracować dla rss, atom lub innego zasobu gospodarzem na swoim serwerze.
To wydaje się łatwiejszy sposób na ... Dzięki .. – haden
Zgodnie z tym http://www.rssboard.org/rss-specification#ltguidgtSubelementOfLtitemgt 'guid' jest polem opcjonalnym, więc może nie być obecne w niektórych Kanały RSS ! – webNeat