window.fetch的事件监听器

时间:2016-09-23 16:39:57

标签: javascript fetch

是否有可能全局监控所有window.fetch个请求?我知道它适用于Promises,这很棒,但是我需要在任何这样的请求完成时得到通知(失败/成功)。我无法访问调用这些函数或成功/失败处理程序的函数。

所以基本上我正在寻找像

这样的东西
window.addEventListener('fetch', ev => {
  if (ev.type == 'FetchSuccess') {
    // process ev.response
  }
});

1 个答案:

答案 0 :(得分:6)

您可以通过以下方式覆盖获取功能:

var oldFetch = fetch;  // must be on the global scope
fetch = function(url, options) {
    var promise = oldFetch(url, options);
    // Do something with the promise
    return promise;
}

通过这种方式,您可以控制返回的promises,同时保持其使用。