簡體   English   中英

Chrome擴展程序中的Cookie權限不起作用

[英]Cookies permission in Chrome extension doesn't work

我嘗試添加Cookie權限時,我的Chrome擴展程序出現問題。 首先,清單文件是這樣的

"permissions": [
    "cookies",
    "https://api.box.com/*", 
    "https://www.box.com/api/*",
    "https://dl.boxcloud.com/*",
    "tabs",
    "identity",
  ],

但是,當我在chrome:// extensions /中單擊我的擴展程序的權限屬性時,沒有cookies權限顯示。 我不確定是否有問題,請幫我澄清一下。

主要問題是,當我運行代碼時:

getCookies("https://www.box.com", "tokens", function(tokens){
        console.log("Token returned");     
});

function getCookies(domain, name, callback) {
    console.log("Getting cookies...");
    chrome.cookies.get({"url": domain, "name": name}, function(cookie) {
        if(callback){
            console.log("Done getting cookies, calling back...");                    
            callback(cookie.value);
        }
    });
}

永遠不會調用callback函數,因此永遠不會打印Token returned消息。 我可以看到"Done getting cookies, calling back..在控制台中"Done getting cookies, calling back..消息。那么為什么會這樣?請幫我解決一下......

代碼有兩個問題:

  1. 如果找不到cookie,則使用cookie == null調用chrome.cookies.get回調。

    因此,調用callback(cookie.value)是一個錯誤,並且不會執行。

  2. 找不到Cookie,因為您傳遞的網址https://www.box.com與權限模式"https://www.box.com/api/*"不匹配。 您需要更改模式或傳遞給chrome.cookies.get的URL。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM