1

我为快速 cookie 管理做了一个扩展。在清单 v.2 更改后,我遇到了一些奇怪的错误。这是我的代码的一部分

console.log('start');
...
var initer = function(i){
    console.log('get cookies');
    chrome.cookies.getAll({domain:nets[tinuse]['cookies'][i]}, function (f){
        console.log(f);
        ....
    });
}
console.log('get cookies');
chrome.cookies.getAll({domain:nets[tinuse]['cookies'][0]}, function (f){
    console.log(f);
    ....
    initer(i);
});

在控制台中我得到:

start
get cookies

get cookies

对于第二个电话,我什至没有收到空的控制台日志消息。如果我从控制台手动进行相同的调用以弹出窗口,则一切正常。

chrome.cookies.getAll({domain:nets[tinuse]['cookies'][0]}, function (f){
    console.log(f);});
undefined
[Object, Object, Object, Object, Object, Object, Object, ...]

所有权限都可以。这些方法是从点击事件监听器中调用的,除了获取 cookie 之外,一切都正常。而且我无法完成进程,因为第二个回调(在initer主体中根本没有被触发)。

4

1 回答 1

1

您需要获得使用 cookie API 的权限。在您的扩展清单中请求许可。参考这个

于 2012-09-11T09:17:48.100 回答