簡體   English   中英

為什么 document.cookie 不起作用

[英]Why document.cookie is not working

  var curCookie = name + "=" + value +
    "; expires=" + ATS_getExpire()  +
    "; path=" + path  +
    "; domain=" + domain  ;     
document.cookie = curCookie;
alert("Your Cookie : " + document.cookie);

當我使用上面的代碼時,警報消息為空。 為什么 document.cookie 是空的。 請任何人回答。

請參閱此處以獲取實時示例

你正在使用; 而不是, .

使用,來區分您的 cookie 值

var curCookie = name + "=" + value + 
    ", expires=" + ATS_getExpire() + 
    ", path=" + path + 
    ", domain=" + domain;

document.cookie = curCookie;
alert("Your Cookie : " + document.cookie);

更新

截至今天(2021-08-25),現場示例在瀏覽器中並不一致:

  • 鉻 92.0.4515.159:❌
  • 邊緣 92.0.902.78:❌
  • 歌劇 77.0.4054.277:❌
  • Firefox 91.0.2:✅

我發現......令人沮喪的是,在瀏覽器中本地運行頁面時,document.cookie 不起作用。

當我將同一頁面上傳到網站時,突然間所有 cookie 值都正常工作。 我會找出原因,稍后填寫此答案的 rest。

有時,如果頁面托管在公共后綴列表中列出的域上(例如 github.io,cloudfront.net),則可能會發生這種情況。 這些域由瀏覽器特殊處理,出於安全原因限制寫入 cookies。

嘗試使用 jQuery Cookie 插件:

jQuery Cookie 插件

$.cookie('the_cookie', 'the_value', { expires: 7, path: '/' });

暫無
暫無

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

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