所以我試圖使用GAE Channel API和Angular.js來做實時的數據綁定更新(這將是非常酷,正確!?)。我被告知正確的做法是將Channel API Javascript Client包裝在Angular.js服務中(and make sure to use $apply())。但是,這到底意味着什麼?如何在Angular.js服務中正確包裝GAE Channel API並將更新推送到整個應用程序?
據我瞭解,對於Channel API,我幾乎應該有一個1:1的客戶端:通道連接,所以我的所有更新都必須在我的整個應用程序中的所有模型中向下流動。那麼我該如何向可能的多個範圍廣播模型(通常是ngResource)已更新? $ watch? $發出? $廣播? $消化?
好了,一些編碼後,我在一個選項現在定居,這是使用存儲密鑰和回調的信道使用在客戶端上發佈 - 訂閱數據(由加控制器)。當服務器發送一個密鑰時,任何回調(通常是一串'$ get()s')與該密鑰對應的調用。現在爲我工作,但我仍然不確定這是做到這一點的正確方法... – SteveShaffer
不完全是解決您的問題的方法,但需要考慮的至少是嘗試的方法是http://www.pubnub.com/Channel API支持1:1連接,這意味着如果您想向多個客戶端廣播一條消息,則必須發送很多消息,而在使用PubNub時,您只發送一條消息,並且曾經連接的人獲取消息。 – Lipis
謝謝,PubNub看起來很棒;我會看一看。我越來越習慣於使用1:1 Channel API連接作爲安全的鎖定方式來爲此應用程序進行廣播,但是PubNub看起來對其他項目會有所幫助。 – SteveShaffer