Chrome扩展程序console.log覆盖

时间:2015-06-05 19:54:22

标签: javascript google-chrome google-chrome-extension

我正在构建一个chrome扩展程序,它读取控制台日志并找到ip出现的位置,在字符串" Connecting to"之后,然后获取ip。

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);

我已经尝试使用Tampermonkey这个代码并且工作正常,但是作为chrome扩展它不起作用.console.log函数的覆盖正常工作,因此它可能是关于chrome扩展的权限。是我的第一个,所以我不太了解。我得到Uncaught TypeError:无法读取属性&#39; 0&#39;未定义如果您还需要其他任何东西,请告诉我

1 个答案:

答案 0 :(得分:1)

原因是因为Tampermonkey将代码注入网站的文档,而在Chrome Extension否,如果您这样做,则编辑Chrome扩展程序的控制台。为此,您应该使用一种方法来注入脚本,您可以看到 here