首页  编辑  

浏览器中拦截特定URL地址请求的插件

Tags: /计算机文档/Windows应用技巧/   Date Created:
打开网页的时候,有些网址因为各种原因无法访问,那么会导致网站加载时间变长,而这些资源又不影响正常业务的使用,可以考虑用浏览器插件拦截掉这些URL请求,返回空内容,从而加快速度。
如果要在浏览器中拦截特定URL地址,可以用这样的方法:
新建浏览器插件:
manifest.json:
{
  "manifest_version": 3,
  "name": "JS请求拦截器",
  "version": "1.0",
  "description": "拦截特定JS文件请求并返回空内容",
  "permissions": [
    "declarativeNetRequest"
  ],
  "host_permissions": [
    "http://*/*",
    "https://*/*"
  ],
  "background": {
    "service_worker": "background.js"
  }
}
background.js:
// 要拦截的完整URL列表
const blockedUrls = [
  "https://unreachable-server.com/library.js",
  "https://cdn.problematic.com/main.js",
  "http://external-domain.com/blocked-script.js",
  "https://another-bad-domain.com/libs/jquery.js"
];

// 转换URL为规则
const rules = blockedUrls.map((url, index) => ({
  id: index + 1,
  priority: 1,
  action: {
    type: "redirect",
    redirect: {
      url: "data:application/javascript,"
    }
  },
  condition: {
    urlFilter: url,
    resourceTypes: ["script"]
  }
}));

// 注册规则
chrome.declarativeNetRequest.updateDynamicRules({
  addRules: rules,
  removeRuleIds: rules.map(rule => rule.id)
});

console.log('JS拦截规则已设置');
这样就能正常使用了。