Javascript Chrome扩展控制台.log覆盖
我正在构建一个chrome扩展,它读取控制台日志,在字符串“Connecting to”之后找到ip出现的位置,并获取ipJavascript Chrome扩展控制台.log覆盖,javascript,google-chrome,google-chrome-extension,Javascript,Google Chrome,Google Chrome Extension,我正在构建一个chrome扩展,它读取控制台日志,在字符串“Connecting to”之后找到ip出现的位置,并获取ip store = []; var oldf = console.log; console.log = function(){ store.push(arguments); oldf.apply(console, arguments); }; pos = 0 server = "" setTimeout(function(){ for(i = 0
store = [];
var oldf = console.log;
console.log = function(){
store.push(arguments);
oldf.apply(console, arguments);
};
pos = 0
server = ""
setTimeout(function(){
for(i = 0; i < store.length; i++){
if(store[i][0].indexOf("Connecting to") != -1){
pos = i
}
}
var goal = store[pos][0].split(" ")[self.length-1];
server = goal
console.log(server);
}, 3000);
store=[];
var oldf=console.log;
console.log=函数(){
store.push(参数);
oldf.apply(控制台、参数);
};
pos=0
server=“”
setTimeout(函数(){
对于(i=0;i
我已经用Tampermonkey尝试过这段代码,它可以正常工作,但作为chrome扩展,它不起作用。console.log函数的重写工作正常,因此可能与chrome扩展的权限有关。这是我的第一次,所以我不太了解。我得到未捕获的TypeError:如果您需要任何其他信息,则无法读取undefined的属性“0”原因是
Tampermonkey
将代码注入站点的文档,而在Chrome Extension
否中,如果您这样做,则编辑Chrome Extension的控制台。为此,您应该使用一种方法来注入脚本,您可以看到此代码store[pos][0]。即使在store.length==0
时,split(“”[self.length-1]
也会运行,这可能是导致错误的原因。@levi这不是导致错误的原因,因为预期的输出就是输出。当我将代码作为chrome扩展运行时,出现了错误,预期的输出不是输出。它可以工作,您给了我问题的解释。谢谢:)