2017-08-10 40 views
1

我有一個應用程序,其中web ui(反應)雲功能然後運行並更新數據庫中的完成值。觸發一個雲功能,並在功能完成時採取行動

如何在Cloud Function完成時顯示「進度」指示並將其取下?

我最初以爲我會做這樣的事的僞代碼與承諾:

return updateDatabaseToTriggerFunctionExec() 
    .then listenForFunctionDoneEvent() 
    .then return Promise.resolve(); 

不過,我不知道如何知道什麼時候該功能已經完成和更新的值。檢測觸發的雲端功能何時完成的推薦方式是什麼?

回答

2

你必須要實現像使用數據庫,你推命令插入位置的繼電器和功能的命令 - 響應模型推動的結果指出,可以通過發出命令的客戶端可以聽了。使這項工作起作用的是事實,即客戶端和服務器之間已知的命令和響應的位置,並且他們對爲客戶端命令生成的推送標識有共識。

my session at Google I/O 2017期間,我用這個體系結構稍微翻了一下,在那裏我用Firebase構建了一個基於回合的遊戲。

另一種方法是使用HTTP函數,該函數具有更清晰定義的請求 - 響應週期。

+0

是否允許火力「聽」到還不存在使用ref.on()或ref.once()或者是需要現有的節點,則這將檢查是否孩子存在的節點? – Glenn

+0

任何操作都不需要存在節點。 –

+0

前段時間我爲這些「等待價值」的情況寫了片段:https://gist.github.com/puf/146fecdae240ac0e62f858f7650aa85f。 JavaScript版本:'VAR聽者= ref.on( '值',函數(快照){ 如果(snapshot.exists()){ 的console.log( '值現在是' + snapshot.val()); ref.off('value',listener); } });' –