2009-08-15 36 views
0

當我選擇(通過單獨頁面)時,我想爲其上的所有用戶動態更新網頁的一部分。爲所有用戶動態更新頁面的一部分

我想到的情景:

  1. 說有一個聊天框和頁面上的圖片 。
  2. 當我單擊另一個 頁面(或相同)上的按鈕時,圖片 更改爲頁面聊天中的所有用戶的嵌入式YouTube視頻 。

什麼是最好/最簡單的方法來做到這一點?

+0

我打算使用來自客戶端的常規JS請求進行更新。 – stringo0 2009-08-19 22:04:43

回答

2

您需要客戶端進行輪詢(即定期向服務器發出AJAX請求以檢查更改)或使用Comet:基本上是一個長期的請求,它保持與服務器的開放連接,並且僅服務器要麼返回請求超時(在這一點上客戶端發出另一個請求)或有變化。

請注意,如果您在熱門站點上執行此操作,則需要能夠應對同時連接的批次。如果你一次需要有一萬個連接,那麼「每個連接一個線程」方法真的很糟糕。基本上,你會希望能夠異步地處理這些請求。你如何實現這將取決於你的服務器平臺。

+0

我目前正在考慮對此使用javascript/ajax--使用Comet有什麼好處嗎? – stringo0 2009-08-15 19:16:32

+0

彗星本身不僅僅是一種技術。您仍然使用Javascript/AJAX,但是您的AJAX請求會掛起(在服務器上),直到出現更改或請求超時。 – 2009-08-15 19:20:09

2

我不會使用'彗星'。

這個更新幾乎肯定不需要在所有查看網站的人都立即進行。

老實說,當你更新他們正在更新的任何其他數據(比如聊天記錄)時,我可能會偷偷地更新它。因此,您只需將該視頻標記爲該細分受衆羣的「下一個」直播項目,並且已經更新聊天內容的代碼會在該廣告素材需要新視頻時更改該值。

+0

在聊天記錄中加入它是一個不錯的主意......但對於響應式聊天,我懷疑你希望像彗星這樣的東西放在第一位:) – 2009-08-15 06:46:54

+0

我會不同意這一點,但我想在我們確定證明哪一個之前方法是更好的,我們需要比較實現:P – 2009-08-15 06:49:51

+0

那麼你沒有說你如何以一種響應的方式實現聊天方面,所以即使在理論上也沒有什麼可比較的。當然,如果你正在討論從Java applet或類似的東西開始直接連接,那就不同了 - 但是對於純粹的HTML + JS,我很想知道如何在沒有請求的情況下很好地使用聊天工作。 。 – 2009-08-15 07:38:33

相關問題