簡體   English   中英

如何從RESTful Web服務提供AJAX定期更新?

[英]how to provide AJAX periodic updates from a RESTful web service?

我正在編寫一個小型演示Web服務。

我想使用此Web服務向服務使用者提供定期更新。

我必須指出,我只對高層(即HTTP和Javascript)感興趣。 我不關心HTTP命令或動態javascript的生成方式。 我對這種機制的基本概念感興趣,並且不想被某種特定的實現語言所束縛(我可以決定使用C / C ++,PHP,Python,C#,Java,Ruby甚至是Lua,所以最好離開語言特定方面)。

這是典型用例場景中的事件序列:

  • 使用者首先通過AJAX HTTP GET命令發出初始請求

  • 服務以第一組數據響應

  • 隨機時間過后,服務會向客戶端發送更多數據

  • 如果沒有更多可用數據,則該服務會將最后一個數據發送給客戶端,並告訴客戶端有效地停止“輪詢”或“監聽”新數據

IIRC,所需的行為(如上所述)可以通過以下方式實現:

  1. 在服務使用者的頁面中插入隱藏的框架
  2. 從服務器生成一個JSON響應,其中包含最新數據以及插入隱藏幀中的動態Javascript。 客戶端上的javascript“輪詢”服務以獲取新數據
  3. 服務中的最終數據不再包含動態Javascript,從而有效地阻止了客戶端連續輪詢服務

有人可以解釋實現上述行為所需的正確(最佳實踐)步驟嗎?

[編輯]

如您所知,這是(輕量級)服務器推送的一種形式。 我知道Comet等,但是對於我的需求,它們太笨拙/沉重(此外,它們還需要其他第三方軟件等)。 我只想使用Javascript和HTTP投放自己的輕量級版本。

我認為您想調查彗星 “推送技術”和“服務器推送”是這類事情的廣義術語。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM