繁体   English   中英

Chrome扩展程序webRequest异步调用的同步行为

[英]Chrome Extension webRequest synchronous behavior for async calls

我创建了一个测试Web服务器,用作各种“ Web过滤器”。 我正在尝试创建一个使用webRequest API的扩展,以确保我的网络服务器允许或阻止所有传入的URL。

为此,我正在从webRequest内向我的Web服务器进行AJAX调用,我想使用响应来确定是阻止还是允许指定的URL。 问题是, webRequest方法是异步的,而AJAX调用是异步的,所以我不能可靠地等待服务器的响应。

我也无法将所有被阻止/允许的URL存储在localStorage中,因为可能有成千上万个。 我已经尝试在ajax实现中使用jQuery的async: false属性,但是当同时发生数百个请求时,这会使浏览器几乎完全无法使用。 任何人对我如何能够解决此问题有任何想法?

编辑 :我知道以前曾问过类似的问题,但是我所见的这个问题还没有任何可行的解决方案。

我只看到两个不错的选择:

  1. 使该网站成为webproxy
  2. 使用unlimitedStorage许可并将URL存储在WebSQL数据库中(这也是最快的)。 尽管人们普遍担心在W3C停止开发支持IndexedDB的规范后Chrome中可能会弃用它,但我认为它不会很快发生,因为所有其他可用的存储选项的运行速度都大大降低了或功能降低了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM