[英]Meteor.js Publishing and Subscribing 2
我最近對同一主題有另一個問題(后代: Meteor.js Publishing and Subscribing? )。
我有一個測試流星網站。 我在根目錄下的文件中具有以下內容:
/**
* Models
*/
Posts = new Meteor.Collection('posts');
posts = Posts;
if (Meteor.isClient) {
Meteor.subscribe('posts');
}
if (Meteor.isServer) {
Meteor.publish('posts', function() {
return posts.find({}, {time:-1, limit: 100});
});
posts.allow({
insert: function (document) {
return true;
},
update: function () {
return false;
},
remove: function () {
return false;
},
});
}
發生的事情是我進行了編輯,但它停止了工作(在開發服務器上:localhost:3000)。 我恢復了編輯,但是我猜有些改變了,因為它不再起作用了。
客戶確實有權訪問集合(帖子列表),所以這不是問題。
問題是客戶提交帖子的秒數,列表中出現的秒數,然后消失。
這似乎與客戶端沒有發布權時的行為類似,但是正如您在上面看到的,我已經給出了。
當我在Chrome中轉到JS控制台時,沒有出現“拒絕訪問”或錯誤的提示。
當我嘗試從控制台“添加帖子”時,會發生相同的行為。 閃爍,然后消失了。
這是怎么回事? 僅僅是奇怪的流星故障嗎? 任何幫助表示贊賞。
編輯
好吧,顯然是某種內部流星故障。 “流星重置”解決了代碼本身沒有更改的問題。
所以我想問題解決了!
編輯2
不 問題沒有解決。 它又出現了。
一旦帖子數達到一定閾值,似乎就拒絕了它們,這使我相信這與“限制”有關。
有什么幫助嗎?
假設您的客戶在其本地緩存中有100個帖子。 然后,當客戶端插入新帖子時,它將直接插入到客戶端緩存中(因此現在確實包含101個帖子),並在后台將其發送到服務器。 服務器將其插入到真實數據庫中,然后告訴客戶端刪除其緩存的帖子之一,因為它應該僅在緩存中存儲100個帖子。 這可能是您正在發生的事情。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.