繁体   English   中英

Chrome 扩展 cookies 不支持 promise

[英]Chrome extension cookies not honoring promise

我是 JS 编程的新手,但我正在尝试编写一个扩展程序,为特定域获取 cookies 并在单击按钮时处理它们。 我正在尝试使用 promises/await,但代码似乎没有等到 promise 得到解决。


async function getCookies(domain) {
    let promise = new Promise((resolve, reject) => {
        chrome.cookies.getAll({"domain": domain}, function(cookies) {
            resolve(cookies);
        });
    });
    let cookies = await promise
    return cookies;
}


document.addEventListener('DOMContentLoaded', function() {
    var link = document.getElementById('btnremove');  
    link.addEventListener('click', function() {
        var domains = ["www.horizonhobby.com", "yolo.com", "rcgroups.com", "yotpo.com"];
        domains.forEach(domain => {
            let cookies = getCookies(domain);
            console.log("Got " + cookies.length + " cookies for " +  domain);
      });
    });
});

我的控制台日志消息在 cookies 从 API 返回之前被调用。 查看 DEVTools cookies 定义为:

cookies:Promise原型:Promise [[PromiseState]]:“待定”[[PromiseResult]]:未定义

暂无
暂无

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

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