2012-01-14 65 views
0

我想實現一個系統,外部服務器(SuperFeedr)將請求發送到我的服務器(運行節點)和我的服務器進程,然後將這些數據直接向客戶端實時使用NowJS。NowJS服務器事件通知

問題是,我無法訪問everyonce命名空間在我的服務器功能,因爲它有聽()函數被調用它具有函數聲明之後發生後進行初始化。所以基本上:

需求:

NowJS-> Listen->服務器職能 - >大家可變> NowJS

好像我有一個依賴循環,我不知道如何解決它。

回答

1

獨立啓動所有的人。當其中一個啓動時,將其引用到共享的父範圍中。當例如服務器收到通知,只要nowjs還沒有準備好就放棄它。簡單的例子:

var a, b; 
initializeA(function(a_) { 
    a = a_ 
    a.on('request', function(request, response) { 
    if (!b) { 
     // B isn't ready yet, drop the request 
     return response.end() 
    } 
    // ... 
    }) 
}) 
initializeB(function(b_) { 
    b = b_ 
    b.on('request', function(request, response) { 
    if (!a) { 
     // A isn't ready yet, drop the request 
     return response.end() 
    } 
    // ... 
    }) 
}) 
+0

試了一下。失敗。 – user478250 2012-01-25 07:13:33