获取浏览器cookie

时间:2017-10-06 13:42:06

标签: javascript cookies

我正在尝试使用以下内容获取浏览器Cookie: browser.cookies.getAll()但我总是在控制台日志中收到此错误:

  

未捕获的ReferenceError:未定义浏览器

这是我的代码:

  var gettingAll = browser.cookies.getAll({
                     url: "url"
                    });
  console.log(gettingAll);

4 个答案:

答案 0 :(得分:1)

看看下面的内容......

https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie

function getCookie(cname) {
  var name = cname + "=";
  var decodedCookie = decodeURIComponent(document.cookie);
  var ca = decodedCookie.split(';');
  for(var i = 0; i <ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0) == ' ') {
        c = c.substring(1);
    }
    if (c.indexOf(name) == 0) {
        return c.substring(name.length, c.length);
    }
  }
  return "";
}

编辑:固定代码块。

答案 1 :(得分:0)

browser确实未定义。它不是本机JavaScript对象。

您应该使用document.cookiesee here)代替。

答案 2 :(得分:0)

获取 url 值,您可以使用此解决方案:

    var cookiesMap = document.cookie.split(";").map( value => {
        var val =value.split("=")
        var obj = { "key" : val[0], "value" : val[1] }
        return obj;
        });

    for( var i = 0 ; i < cookiesMap.length ; i++ ){
        if( cookiesMap[i].key==="url"){
            console.log(cookiesMap[i].value);
        }
    }

希望它有所帮助:)

答案 3 :(得分:-2)

我不熟悉那种语法, 请改为尝试document.cookie返回包含所有Cookie的字符串。