chrome扩展

{//manifest.json
  "name": "name",
  "version": "1.0.1",
  "manifest_version": 2,
  "description": "description",
  "browser_action": {
    "default_icon": "icon.ico",
    "default_title": "name",
    "default_popup": "index.html"
  },
  "permissions": [ "tabs", "cookies", "storage", "sessions", "webRequest", "webRequestBlocking", "history", "http://*/", "https://*/" ],
  "content_security_policy": "script-src 'self' 'unsafe-inline' 'unsafe-eval' http://ip:*/; object-src 'self'",
  "background": { "scripts": [ "background.js" ] },
  "content_scripts": [
    {
      "matches": [ "*://*/*" ],
      "js": [ "content.js" ],
      "run_at": "document_end",
      "all_frames": true
    }
  ]
}

通信

chrome.extension.onMessage.addListener((req, sender, res) => res(req + 1));//background scripts

chrome.extension.sendMessage(123, alert);//content_scripts
chrome.extension.onMessage.addListener((req, sender, res) => alert(req));//content_scripts

chrome.tabs.query({ /*active: true, currentWindow: true*/ }, function (tabs) {//default_popup
    for (let v of tabs) chrome.tabs.sendMessage(v.id, 'default_popup');
});

chrome.cookies.set({ url: url, name: "a", value: "123" }, console.log);//设置cookie
chrome.cookies.getAll({}, console.log);//查cookie

chrome.webRequest.onBeforeSendHeaders.addListener(p => {//改写requestHeader
    let ua = p.requestHeaders.filter(p => p.name == 'User-Agent')[0];
    if (ua) ua.value = '...';
    p.requestHeaders.push({ name: "AAA", value: "..." });
    return { requestHeaders: p.requestHeaders };
}, { urls: ["http://domain/*"], types: ["xmlhttprequest"] }, ["blocking", "requestHeaders"]);

chrome.webRequest.onHeadersReceived.addListener(p => {//改写responseHeader
    let a = p.responseHeaders.filter(p => p.name == 'px')[0];
    if (a) a.value = '...';
    else p.responseHeaders.push({ name: 'px', value: "..." });
    return { responseHeaders: p.responseHeaders };
}, { urls: ["http://domain/*"], types: ["xmlhttprequest"] }, ["responseHeaders", 'blocking']);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值