2013-08-17 36 views
0

我試圖做一個儀表板,顯示自我們的服務上次部署以來的時間。將任意數據推送到流星服務器

這是農產品我正打算使用:

  1. 部署腳本調用。
  2. 在腳本的末尾,我的Meteor服務器被通知腳本部署。
  3. 服務器插入包含有關部署信息的文檔。
  4. 所有客戶端都會收到新文檔並重新呈現。

我遇到的唯一問題是第2步。

最好的方法是,如果服務器可以以某種方式訂閱並且客戶端可以發佈,但服務器似乎不支持訂閱。

另一種選擇是自己實現DDP,但這可能不是在瀏覽器中不那麼容易。

我查了一下,在meteor-collectionapi這是流星REST API,但它的感覺就像是將違反流星原則,它也出現使用流星0.6.5

所以我的問題時被打破真的,如何通知服務器更改Meteor方式?

回答

1

REST API沒有任何問題。畢竟,HTTP是Web服務器主要的語言會話。

在服務器上,聽下面的方式(0.6.5代碼):

WebApp.connectHandlers.stack.splice(0,0,{ 
    route: '/some/long/secret/route', 
    handle: function(req, res, next) { 
    if(req.method === 'POST') { 
     // Listen for deploy information 
     // Insert info to DB 
    } 
    }, 
}); 

然後你可以只curl正確的地址,給你想要的任何數據。建議將安全機密作爲POST參數之一,這樣一些幸運爬蟲就不會留下不必要的數據。

+0

令人驚歎的答案,非常乾淨! –

+0

我想添加到這個答案的唯一想法是我必須使用'Meteor.bindEnvironment'插入記錄,因爲我使用的是異步代碼。 –

相關問題