gpt4 book ai didi

php - 使用 PHP 创建 cookie 但难以从 javascript 读取

转载 作者:行者123 更新时间:2023-11-29 18:35:46 25 4
gpt4 key购买 nike

我使用以下代码在 PHP 中设置了我的 cookie:

setcookie("id", 100, time()+100000, "/AP", "www.mydomain.com", 0, true);

当我查看存储在浏览器中的 cookie 时,它​​看起来像这样:

Name:    id
Content: 100
Domain: .www.mydomain.com
Path: /AP

注意 .在域中

当我在 javascript 中设置 cookie 时,我得到相同的结果,除了:

Name:    id
Content: 100
Domain: www.mydomain.com
Path: /AP

域不同。为什么我的 PHP cookie 中有一个“.”在 www.mydomain.com 和 javascript 前面没有。

以下是我用来创建 cookie 的 javascript 代码:

            function SetCookie(cookieName,cookieValue,nDays) {
var today = new Date();
var expire = new Date();
if (nDays==null || nDays==0) nDays=1;
expire.setTime(today.getTime() + 3600000*24*nDays);
document.cookie = cookieName+"="+escape(cookieValue)
+ ";expires="+expire.toGMTString();
}

有什么想法吗?

更新:

当我尝试使用 javascript 中的以下函数阅读此内容时:

            function ReadCookie(cookieName) {
var theCookie=""+document.cookie;
var ind=theCookie.indexOf(cookieName);
if (ind==-1 || cookieName=="") return "";
var ind1=theCookie.indexOf(';',ind);
if (ind1==-1) ind1=theCookie.length;
return unescape(theCookie.substring(ind+cookieName.length+1,ind1));
}

我无法使用 ReadCookie 函数(上述)从包含以下内容的 cookie 中获取值:

Domain: .www.mydomain.com

但是 cookie 包含:

Domain: www.mydomain.com 

工作得很好。

最佳答案

这样有同样问题的人以后可以很容易地找到答案。这是我在回答表中的评论:

您将 cookie 设置为 httponly ,这意味着 javascript 无法与之交互。删除 setcookie 的最后一个参数或将其设置为 false,您应该可以使用 javascript 访问它。

setcookie("id", 100, time()+100000, "/AP", "www.mydomain.com", false, false);

很高兴我能帮上忙!

关于php - 使用 PHP 创建 cookie 但难以从 javascript 读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3393428/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com