onBeforeRequest监听器中的异步调用替代方案

时间:2017-03-31 12:56:18

标签: javascript google-chrome google-chrome-extension

对于我的Chrome扩展程序,我希望阻止请求正常运行。我有一个很大的域名列表(~10000)我正在考虑使用IndexedDb来存储域列表,但正如我现在所理解的那样 - 不可能进行异步调用并在请求处理程序中返回结果。 我最初的计划是:

function reqHandler(data) {
  // async IndexedDb call here 
  // and return { cancel: true } or { cancel: false } depends on result
}
chrome.webRequest.onBeforeRequest.addListener(
  reqHandler,
  { urls: ['<all_urls>'] },
  ['blocking']);

看起来这是不可能的? 处理我案件的最佳方法是什么?如何处理这个大小的域名列表?我认为将它作为对象存储在内存中太大了。 希望您能告诉我解决问题的方法。谢谢

0 个答案:

没有答案