2011-11-14 20 views
6

Tôi đang tạo một số plugin sử dụng ajax để tìm nạp thông tin cho trang đó. Bây giờ có các plugin khác nhau có chức năng khác nhau.Bạn có thể thêm các ưu tiên cho các cuộc gọi AJAX

Tất cả các plugin cần được sử dụng độc lập nhưng tôi cũng muốn thêm chức năng mà chúng có thể hoạt động tốt với nhau.

Tất cả các plugin khác nhau đều có tệp JavaScript và chức năng riêng. Đây không phải là vấn đề về yêu cầu HTTP, bởi vì hầu hết mọi người đều có plugin hợp nhất tất cả các tệp thành một khi trang web bị loại bỏ.

-

Bây giờ cho câu hỏi của tôi. Như tôi nói các plugin khác nhau có được các phần khác nhau của trang web. Ví dụ: số lượng bài đăng, tweet của người dùng, thống kê người dùng, đăng nhận xét.

Bây giờ tôi có thể chỉ định mức ưu tiên mà thông tin này được gọi từ trang web. Tôi không thể kết hợp tất cả thành một cuộc gọi ajax tôi nghĩ, bởi vì họ là tất cả các thành phần làm việc cá nhân.

Bất cứ ai biết một giải pháp tốt làm thế nào tôi có thể spicify đầu tiên lấy ý kiến, sau đó số liệu thống kê, vv, vv

khuôn khổ JS của tôi về sự lựa chọn là jQuery.

+1

Bạn phải sử dụng chức năng gọi lại trong yêu cầu Ajax – fliptheweb

+0

Ý anh là gì. –

Trả lời

5

Một phương pháp chung sẽ là triển khai hàng đợi ưu tiên cho các cuộc gọi AJAX đang chờ xử lý. Mỗi plugin sẽ thực hiện cuộc gọi của họ trên hàng đợi, với ưu tiên liên quan đến cuộc gọi và bộ xử lý hàng đợi AJAX sẽ hoạt động thông qua hàng đợi theo thứ tự ưu tiên.

Dưới đây là một ví dụ về một jQuery hàng đợi ưu tiên plugin:

http://benalman.com/code/projects/jquery-message-queuing/docs/files/jquery-ba-jqmq-js.html

Ngoài ra, đây là một đã được thực hiện cho các yêu cầu AJAX:

Sequencing ajax requests

+0

Cảm ơn, tôi sẽ đọc máng các liên kết. Tôi đã suy nghĩ về một hàng đợi, nhưng tôi nghĩ rằng có một vấn đề trong việc thực hiện. Như tôi đã nói, tất cả các plugin có thể chạy riêng biệt. Bây giờ tôi nên định nghĩa hàng đợi ở đâu. Tôi không thể thực hiện chúng trong tất cả các plugin tôi nghĩ. Tôi cũng không thể đặt hàng đợi chỉ trong một. –

+0

@SaifBechan Hai điều cần lưu ý, có thể: 1) yêu cầu người dùng các plugin cài đặt plugin xếp hàng ưu tiên AJAX mới đầu tiên ;-) hoặc 2) xác định chức năng xếp hàng trong mỗi tệp (bạn sẽ muốn tự động hóa, natch), với một bài kiểm tra để xem nó đã được tạo chưa. –

+0

Ok, tôi đang xem xét tùy chọn thứ hai ngay bây giờ, mọi đề xuất về loại hàng đợi nào có thể được sử dụng ?. Tôi không thực sự muốn ép buộc mọi người sử dụng 'wrapper'. Nếu không có lựa chọn nào khác, tôi sẽ làm điều đó, nhưng tôi hy vọng có một lựa chọn khác. Cảm ơn. –

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