- chrome.webRequest.XXX 用于网络流量的统计监控、修改请求和响应
- chrome.proxy.XXX 用于代理的管理
抓包的时候偶尔会遇到返回的 json 串在 prevew 窗口不能显示成对象的形式,如下:
理想的:
这种情况是响应头 content-type 不正确造成的,可以使用 chrome.webRequest.onHeadersReceived.addListener() 修改响应头
相应的可以用 chrome.webRequest.onBeforeSendHeaders.addListener() 修改请求头
两个接口可以修改几乎所有的头,包括 cookie 相关的,因此可以实现一个 cookie 的管理
自定义请求/响应头的插件:
https://github.com/feix760/chrome_custom-headers
某个 tab cookie 独立的插件 (可以让浏览器登录多个账号):
https://github.com/feix760/Chrome_CookieSeparator
chrome.proxy.XXX 可以实现 SwitchySharp 的功能
chrome.webRequest.XXX 不能做到修改响应数据、host 映射等。虽然从安全的角度思考这是异想天开,但有自由访问文件系统的接口(需要用户 2 次确认这种权限),如果能做到真想把 fiddler 的功能集成到 chrome 里去