Điều đầu tiên tôi d thử là fo rget về các thư viện và cố gắng hiểu những gì đang xảy ra trong bối cảnh của một thuê bao chính xác. Nó sẽ thực sự thực sự đơn giản để xây dựng một kịch bản xử lý tất cả điều này với nhau.
Một ứng dụng thuê bao phải làm 2 việc:
- Thừa nhận các susbcription: trung tâm sẽ xác minh mục đích của susbcriber. Đó là yêu cầu GET
- Đối phó với các lần gửi đến. Đó là yêu cầu POST.
Vì vậy, hãy bắt đầu:
- Đặt một kịch bản ở đâu đó trên web (nó phải được truy cập từ phía sau một bức tường lửa) mà phải kiện để xử lý để yêu cầu GET từ trung tâm.Hãy chắc chắn rằng nó chỉ vang các param
hub.challenge
rằng nó được trong cơ thể của phản ứng và trả về 200.
- Gửi sau từ dòng lệnh của bạn:
curl -X POST http://pubsubhubbub.appspot.com/ -d'hub.mode=subscribe' -d'hub.verify=sync' -d'hub.topic=http://the.feed.url' -d'hub.callback=http://the.script.url' -D-
- Bạn sẽ thấy một yêu cầu xác minh đến trên kịch bản. Lý tưởng nhất (nếu bạn làm theo bước 1, nó sẽ phản hồi hub.challenge và trả lại một số 200.
Nếu điều này là tốt, yêu cầu curl mà bạn gửi phải cho bạn biết rằng trung tâm trả về 204. Nếu bạn nhận được bất cứ điều gì khác, kiểm tra cơ thể của phản ứng, nó sẽ chỉ ra cho bạn những gì đã xảy ra.
Later ...
- kịch bản của bạn sẽ nhận được một yêu cầu POST. Đây là thông báo nội dung mới!
- Phân tích cú pháp phần thân thô (XML) của yêu cầu POST này, nó chứa nguồn cấp dữ liệu, onl y với các mục mới.
- Làm bất cứ điều gì cần được thực hiện với nội dung được phân tích cú pháp (lưu vào cơ sở dữ liệu ... v.v).
Tôi hy vọng điều này sẽ hữu ích. Bạn có thể also use this tool để gỡ lỗi đăng ký của bạn, bạn cần trợ giúp.
Nguồn
2010-10-17 09:03:32
Lỗi 409 là * xung đột * và - trong pubsubhubbub - xảy ra khi xác minh đăng ký không thành công –
OK, tôi đã mở tiền thưởng, nhưng tôi không thể chỉnh sửa câu hỏi của @ddluis, vì vậy tôi sẽ hỏi tại đây. Và làm thế nào chính xác để thực hiện điều này - http://github.com/lxbarth/PuSHSubscriber/ class? Tôi không nhận được phần này: Tích hợp với các ứng dụng máy chủ – lam3r4370