gpt4 book ai didi

javascript - 使用 Ajax 和 JSON 时设置 cookie

转载 作者:行者123 更新时间:2023-11-28 02:43:55 24 4
gpt4 key购买 nike

寻找一种可接受的做法,在基于 JSON 和 Ajax 的 Web 应用程序中设置浏览器 cookie。

浏览器似乎不接受来自服务器的 JSON 请求的 cookie。这给我留下了两个我可以看到的选项:

  1. 在执行需要涉及 Cookie 的操作时,不要使用 JSON 请求,而是在文本到达客户端后使用 JSON.parse() 评估 JSON
  2. 通过 JSON 将 cookie 信息从服务器发送到客户端,然后使用浏览器设置 cookie,而不是通过服务器头。这是否也意味着必须在客户端读取 cookie 信息并通过 JSON 发送回服务器,因为浏览器也不会通过 AJAX JSON 请求发送 cookie 信息?

我倾向于选择选项#1,但这两个选项看起来都很糟糕。我在这里遗漏了什么吗?

谢谢!

最佳答案

仅当域属性与您所在的域匹配时才会发送 Cookie。

例如,您设置了一个域名为“.domain.com”的cookie。对domain.com 或任何子域发出的任何请求都将包含cookie,但仅此而已。

对于对其他域的请求,您需要在服务器端设置 cookie,或者如果用户与为该域设置 cookie 的页面进行交互。

我想到的设置 cookie 的两种简单方法是:

  1. 显然,对脚本进行 ajax 调用来设置 cookie
  2. 做这样的事情:

HTML:

<script type="text/javascript" src="http://domain2.com/cookie_login_page.php?username=johnsmith&hash=1614aasdfgh213g"></script>

PHP:

<?php
// ... setCookie stuff
echo 'var cookie_set = true;';
?>

关于javascript - 使用 Ajax 和 JSON 时设置 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12222426/

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