2017-10-06 5 views
1

Ich versuche, die Browser-Cookies zu erhalten mit: browser.cookies.getAll() aber ich habe immer diesen Fehler in dem Konsolenprotokoll statt:Get Browser Cookies

Uncaught ReferenceError: browser is not defined

hier ist mein Code:

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

Antwort

0

browser ist in der Tat undefiniert. Es ist kein natives JavaScript-Objekt.

Sie sollten stattdessen document.cookie (see here) verwenden.

0

einen Blick auf die folgenden haben ...

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

}

+0

was ist der Unterschied zwischen Ihrem Code und dieser Code? var x = document.cookie; Warnung (x); weil es das gleiche Ergebnis gibt! –

+0

@MAK alert x gibt Ihnen jedes Cookie, der obige Code gibt Ihnen einen bestimmten Cookie, so dass Sie Name und Nachname im Cookie speichern können und wenn Sie nur einen Namen haben wollten, wäre es var name = getCookie ("name"); – Keagz93

-2

Ich bin nicht mit dieser Syntax vertraut, versuchen statt document.cookie sollte ein String enthält alle Cookies zurück.

0

zu bekommen die url Wert u diese Lösung verwenden:

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

hoffe, es hilft :)