AngularJs:如何在不同的域上设置相同的cookie

时间:2016-06-08 05:28:05

标签: javascript jquery asp.net angularjs cookies

我有2个域名

  1. www.site1.com
  2. www.site2.com
  3.   

    重要提示:
      不是子域!
       Allow-Origin在两个域都启用。
      可以完全访问这两个域。

    问题:

    如何在 site1 &上设置Cookie在 site2 上获取该Cookie?

    我想在AngularJs上使用它,无论你的例子中是否使用jQuery。

1 个答案:

答案 0 :(得分:2)

Google等多站点公司采用了一种技术,可以让用户每次单一身份验证都可以登录所有网站。

这个问题是关于 A 如何读取 B 的Cookie。但我的回答只告诉您 A 如何在 B 中设置Cookie。虽然这种技术可以用于OP的有用方式,但是受欢迎的是负面因素。我仍然会传播意识。

在站点B中创建一个php文件(比如说setcookie.php)。这可以为站点B设置一个cookie。

setcookie("MyCookie", "subinsb.com", time()+3600);

现在,如果您可以从任何站点调用此php文件,它将为站点B设置cookie。调用此脚本的一种着名方法是通过隐藏的img标记。因此,网站A可以拥有此图片代码 - 这将为网站B设置Cookie。

<img src="http://www.siteB.com/setcookie.php" style="display:none;" />

加载此图片后,您知道已设置网站B的Cookie。

有趣的是,您也可以通过URL将数据发送到站点B的cookie。您的setcookie.php可以通过$_GET读取数据并将其包含在Cookie中。

Here就是这篇文章。