流星 - 请求随机失败

Meteor - Requests randomly failing

我遇到了一些请求随机失败的奇怪问题。我不知道是什么导致了这种行为。有时是图片未加载,有时是 ajax 请求(cfs/severtime 或 algolia-search),有时一切正常。它也发生在本地和网上。这是两个不同的屏幕截图,其中不同的资源在刷新浏览器后无法加载。

看看这个:What does status=canceled for a resource mean in Chrome Developer Tools?

您的请求似乎没有失败,它们被 chrome 取消了。这通常是因为一些 javascript 改变了 DOM 并且它最终并不需要它已经开始请求的资源。页面呈现后是否确实缺少任何资源?

终于找到了问题的根源,也许我的回答会对其他 Meteor 开发人员有所帮助。

我曾经这样做过:

var providersSub = Meteor.subscribe('providers');

Tracker.autorun(function () {
  if(!providersSub.ready())
    return;

  var providerIds = _.pluck(Provider.all().fetch(), '_id'));      
  ...
  this.stop();
});

而不是:

var providersSub = Meteor.subscribe('providers');

Tracker.autorun(function (computation) {
  if(!providersSub.ready())
    return;

  var providerIds = _.pluck(Provider.all().fetch(), '_id'));      
  ...
  computation.stop();
});