繁体   English   中英

使用devtool进行Haro文件保存的Chrome扩展程序

[英]Chrome extension using devtool for Har file save

所以这就是我想要做的。 我想在使用谷歌浏览器时保存所有HTTP(内容+请求+响应)。 我找到了一种方法,使用网络工具(在开发人员工具中),我可以手动下载所有内容。

现在我想自动完成整个过程,所以我不需要做任何手动操作。 我认为我们可以通过使用devtools.network API编写一个简单的Chrome扩展程序来实现这一目标。

chrome.devtools.network.onRequestFinished.addListener(
    function(request) {
    //dosomething
});

但我很遗憾,我以前从未做过Chrome扩展开发。 我做了一个简单的manifest.json文件:

{
     "manifest_version": 2,
     "name": "My extension",
     "version" : "1.0",
     "background": {
         "scripts": ["devtools.js"],
         "persistent": true
     },
     "devtools_page": "devtools.html",
     "browser_action": {
         "default_title": "Get it",
         "default_icon" : "icon.png"
     }
}

并粘贴了devtools.js的第一个代码片段,但它给了我一个错误:

网络未定义

我是在正确的轨道上吗? 如果是这样,我的代码出错了什么?

来自“扩展DevTools”

chrome.devtools.* API模块仅适用于DevTools窗口中加载的页面。 内容脚本和其他扩展页面没有这些API。 因此,API仅在DevTools窗口的生命周期内可用。

所以你可以在devtools.html使用它,只要它打开,但不能在后台使用。


或者,您可以使用chrome.debugger API ,它与Dev Tools一样长 没有打开 请注意它是一个非常低级的API,几乎没有文档。

从你的其他问题来看,你的目标是自动化这个过程 - 这可能是一条更好的道路(因为据我所知,没有自动化方式打开一个启用了Dev Tools的页面)。 debugger API可以复制Dev Tools的功能, 但是一次只能将一个工具附加到页面 - 因此,如果调用Dev Tools, debugger停止工作

编辑:由于Chrome支持Chrome 63多个调试器客户端,因此可以同时附加Dev Tools和chrome.debugger

暂无
暂无

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

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