2016-11-30 71 views
0

我想使用JavaScript獲取瀏覽器cookie。我嘗試了下面的代碼,但我沒有得到跨域cookie。如何獲取瀏覽器使用JavaScript的Cookie

下面是代碼:

function get_cookies_array() { 
    var cookies = {}; 
    if (document.cookie && document.cookie != '') { 
    var split = document.cookie.split(';'); 
    for (var i = 0; i < split.length; i++) { 
     var name_value = split[i].split("="); 
     name_value[0] = name_value[0].replace(/^ /, ''); 
     cookies[decodeURIComponent(name_value[0])] = decodeURIComponent(name_value[1]); 
    } 
    } 
    return cookies; 
} 
var cookies = get_cookies_array(); 
for (var name in cookies) { 
    document.write(name + " : " + cookies[name] + "<br />"); 
} 

有誰解決這個問題。

+2

如果這是您的問題,您無法從其他域獲取Cookie。不可能。 – nicovank

+0

有沒有可能使用其他方式獲取這些cookie? @nicovank – Harshitha

+0

http://stackoverflow.com/questions/3342140/cross-domain-cookies引用thos鏈接 –

回答

1

在大多數情況下,出於安全原因,您無法讀取跨域cookie。

每個cookie都有一個定義域,並且您的瀏覽器會根據您所在的域來判斷您可以讀取哪些cookie。

如果您擁有對兩個域的控制權,則可以修改域B上的cookie設置以允許域A讀取它們,或者編寫Cookie獲取器以獲取值。有創意!

相關問題