以下是一个在用户计算机上编写12个月的JavaScript cookie。

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

但是使用当前代码,一旦他们离开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/

10-11 13:27