2009-12-29 28 views

Trả lời

3

Đó là sự cố. Đó là lý do tại sao bạn phải định cấu hình trình đọc của bạn tần suất nó sẽ làm mới nguồn cấp dữ liệu.

9

RSS là công nghệ kéo. Người đọc tìm nạp lại nguồn cấp dữ liệu RSS ngay bây giờ và sau đó (ví dụ: hai lần mỗi giờ, hoặc thường xuyên hơn nếu người đọc biết rằng đó là nguồn cấp dữ liệu được cập nhật thường xuyên).

Nguồn cấp dữ liệu được phân phối qua HTTP thông thường và bao gồm tệp XML đơn giản.

+1

Câu hỏi đặt ra là làm cách nào để người đọc biết rằng có bản cập nhật? Nó liên tục đọc cùng một nguồn cấp dữ liệu? Làm thế nào để nó biết có một bản cập nhật và không tải lại những gì đã thấy? –

10

Nó chỉ kiểm tra nguồn cấp dữ liệu để cập nhật thường xuyên.

Gần đây, có một giao thức mới có tên là pubsubhubbub để đẩy nguồn cấp dữ liệu đến người nghe. Nhưng nó đòi hỏi các nhà xuất bản hỗ trợ nó.

Here là danh sách các dịch vụ web hỗ trợ thời gian thực RSS đẩy, bao gồm cả Google Reader, Blogger, FeedBurner, FriendFeed, MySpace, vv

24

RSS là một định dạng tập tin source và không thực sự biết bất cứ điều gì về nơi nó được các mục từ. Câu trả lời thực sự là: "làm thế nào một yêu cầu http có thể nhận được kết quả mới nhất từ ​​máy chủ" và câu trả lời là Điều kiện GETsource. Http cũng hỗ trợ PUT có điều kiện.

This is an article về cách sử dụng tính năng này của http để hỗ trợ cụ thể cho các tin tặc rss.

+0

Tuyệt vời. Bài viết đó cho tôi biết thuật ngữ RSS mà tôi đang tìm kiếm: "GET có điều kiện". Và thuật ngữ đó dẫn tôi đến tìm những gì tôi đang tìm kiếm trong tài liệu Python cho feedparser. Cảm ơn một lần nữa! Mọi người nên +1 câu trả lời này! –

5

Hãy tóm tắt:

  • Thông thường, một khách hàng biết rằng một RSS feed đã được cập nhật thông qua bầu cử, đó là thường xuyên kéo (HTTP GET yêu cầu trên URL feed)
  • Đẩy không tồn tại trên web, ít nhất, không phải với HTTP cho đến khi HTML5 websocket được sửa.
  • Tuy nhiên, một số khung blog như Wordpress, Google và các công cụ khác, hiện hỗ trợ quy ước pubsubhubbub. Trong chế độ này, bạn sẽ "đăng ký" các cập nhật của luồng RSS. Các "trung tâm" sẽ gọi một URL trên trang web của bạn (URL gọi lại) để gửi cho bạn thông tin cập nhật: đó là một sự thúc đẩy.

Đẩy hoặc kéo, trong cả hai trường hợp bạn vẫn cần phải viết một số mã để cập nhật danh sách RSS trên trang web, cơ sở dữ liệu hoặc bất cứ nơi nào bạn lưu trữ/hiển thị nó. Và, như một câu hỏi phụ, không cần phải yêu cầu toàn bộ XML ở mọi lần kéo để xem nội dung có thay đổi hay không: sử dụng tiêu chuẩn không liên kết với RSS, nhưng toàn cầu cho toàn bộ giao thức HTTP (etag and last-modified headers)), bạn có thể biết nếu trang RSS đã được sửa đổi sau một ngày nhất định và chỉ lấy toàn bộ XML nếu được sửa đổi.

Các vấn đề liên quan