无法读取不同页面中使用 Javascript 设置的 Cookie?
尝试使用 Javascript 设置 Cookie 并在另一个 PHP 页面中读取它时,众多用户面临困难。虽然可以创建 cookie,但后续在不同网页上访问它会失败。
解决方案的本质
问题的症结在于 cookie 的设置,特别是它的路径和域。使用 Javascript 创建 cookie 时,必须显式指定这些属性,以确保跨多个网页的可访问性。
路径和域参数
路径参数定义了范围cookie 在网站目录结构中的可用性。另一方面,域参数限制 cookie 对特定网站域或子域的可访问性。
要正确设置这些属性,请使用以下语法:
document.cookie = 'cookieName=cookieValue; expires=date; path=/; domain=.website.com'
至关重要请记住将“website.com”替换为您选择的域名。此外,“date”应该代表将来的到期日期。
其他注意事项
如果 cookie 的路径和域配置正确,但问题仍然存在,请考虑以下附加因素:
示例实现
function createCookie(name, value, days) { let date = new Date(); date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); let expires = "; expires=" + date.toGMTString(); document.cookie = name + "=" + value + expires + "; path=/; domain=.website.com"; }
结论
通过正确设置cookie的路径和域参数,可以保证使用Javascript设置的cookie可以在同一域结构内的不同PHP页面中读取。了解这些参数对于跨网页有效使用 cookie 至关重要。
以上是为什么我无法读取不同页面上的 Javascript Cookie?的详细内容。更多信息请关注PHP中文网其他相关文章!