【问题标题】:jQuery cookie not being passed from HTTPS page to another HTTPS pagejQuery cookie 没有从 HTTPS 页面传递到另一个 HTTPS 页面
【发布时间】:2023-03-08 20:28:01
【问题描述】:

我正在尝试使用 jQuery cookie 将 cookie 从一个 HTTPS 页面发送到另一个 HTTPS 页面。

我把cookie设置成这样一页1:

$.cookie('name', variable, { expires: 300 , secure:true});

然后在下一页上,我尝试这样获取它:

console.log( $.cookie('name') );

不掷骰子...我试图以某种方式做非法或不道德的事情吗?

如果有帮助,这些页面是: Page 1

点击任何“免费试用”按钮即可到达第 2 页。

【问题讨论】:

  • 嗯,看起来不错。您是否检查过 cookie 是否保存在浏览器的 cookie 中? :-)
  • 是的,做了一个快速的 document.cookie,它不在里面
  • 您是否使用浏览器的开发者工具检查过 cookie 是否存在?对于 Chrome,按 F12 键,然后选择 Resources 选项卡,它应该在 Cookies 下。
  • 是的,打开开发工具,在控制台输入document.cookie,肯定没有

标签: javascript jquery cookies


【解决方案1】:

您可以使用域路径设置cookie:

$.cookie('the_cookie', 'the_value', { expires: 7, path: '/', domain: 'jquery.com', secure: true });

您可以在此处阅读:

JQuery Cookie values not maintained while moving from http to https

您也可以通过 javascript 设置和获取 cookie,它在 https 服务器上运行良好

set cookie:

document.cookie="username=John Doe";

get cookie:

var x = document.cookie;

delete cookie:

document.cookie = "username=; expires=Thu, 01 Jan 1970 00:00:00 UTC";

您可以通过以下方式获得帮助:

http://www.w3schools.com/js/js_cookies.asp

【讨论】:

  • 不,那没用。我不想从 HTTP 发送到 HTTPS。我要从 HTTPS 转到 HTTPS。
  • 你有没有尝试通过javascript而不是jquery设置和获取cookie
  • 我尝试在 https 服务器上通过 javascript 设置和获取 cookie,它工作正常,它可能会对你有所帮助。 document.cookie="username=John Doe";
  • 我认为您没有正确测试过。如果您在一个页面上设置该 cookie,然后转到另一个页面(例如 fieldedge.com.au),则该 cookie 将不存在。
  • 我不知道为什么它对我不起作用。它只是突然开始工作。用我的代码和你的。很奇怪。抱歉,我无法提供更多解释。
猜你喜欢
  • 2014-12-01
  • 2017-01-02
  • 1970-01-01
  • 2015-04-14
  • 2010-11-05
  • 1970-01-01
  • 1970-01-01
  • 2020-11-20
  • 2012-07-26
相关资源
最近更新 更多