javascript - 在域上创建 JavaScript cookie 并跨子域读取它

标签 javascript cookies

以下是在用户计算机上保存 12 个月的 JavaScript cookie。

我们在主域(如 example.com)上设置 cookie 后,如果用户访问子域(如 test.example.com),我们需要继续识别用户在我们的“测试”子域中的事件。

但使用当前代码,一旦他们离开 www.example.com 并访问 test.example.com,他们就不再被标记为“HelloWorld” .

有人可以帮助我编写代码以允许跨子域读取 cookie 吗?

<script type="text/javascript">
  var cookieName = 'HelloWorld';
  var cookieValue = 'HelloWorld';
  var myDate = new Date();
  myDate.setMonth(myDate.getMonth() + 12);
  document.cookie = cookieName +"=" + cookieValue + ";expires=" + myDate;
</script>

最佳答案

只需在您的 cookie 上设置 domainpath 属性,例如:

<script type="text/javascript">
var cookieName = 'HelloWorld';
var cookieValue = 'HelloWorld';
var myDate = new Date();
myDate.setMonth(myDate.getMonth() + 12);
document.cookie = cookieName +"=" + cookieValue + ";expires=" + myDate 
                  + ";domain=.example.com;path=/";
</script>

关于javascript - 在域上创建 JavaScript cookie 并跨子域读取它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5671451/

相关文章:

javascript - Cheerio - 当选择器返回多个结果时获取正确的文本

php - 动态购物车表和 cookie 创建

javascript - 有没有办法知道Servlet中的JS在浏览器上是否启用?

javascript - 如何在 Angular-js 指令中定义一个函数

javascript - 由于不支持的 MIME 类型 ('text/x-js',无法注册 ServiceWorker)

javascript - 如何使用外部域创建cookie?

javascript - 是否可以在 JavaScript 中重新加载页面后保留变量值而不使用 cookie 和本地存储?

ruby-on-rails - 是否可以创建 Rails session 'just in time' ?

WCF 4.0 Cookie 只有第一个被浏览器记录

javascript - 无法在 React 组件中显示从获取的序列化 api 获取的信息