Javascript 我可以通过Ajax响应在不同的域上设置cookie吗?

Javascript 我可以通过Ajax响应在不同的域上设置cookie吗?,javascript,ajax,redirect,cookies,Javascript,Ajax,Redirect,Cookies,我想在位于不同域的站点之间无缝登录用户。(由于历史原因,该网站的两个不同语言版本托管在不同的域上……我知道……但用户不需要在更改语言后再次登录。) 我想到了以下几点: 用户位于a.com a.com上的脚本向b.com 而b.com则以会话cookie响应 浏览器为b.com设置该会话cookie 脚本设置window.location='b.com' 用户看到自己自动登录到b.com 这种方法行得通吗?为什么需要使用AJAX?为什么a.com页面不直接将表单提交给b.com,然后他们就会登录到

我想在位于不同域的站点之间无缝登录用户。(由于历史原因,该网站的两个不同语言版本托管在不同的域上……我知道……但用户不需要在更改语言后再次登录。)

我想到了以下几点:

  • 用户位于
    a.com
  • a.com
    上的脚本向
    b.com

    b.com
    则以会话cookie响应
  • 浏览器为
    b.com
    设置该会话cookie
  • 脚本设置
    window.location='b.com'
  • 用户看到自己自动登录到
    b.com

  • 这种方法行得通吗?

    为什么需要使用AJAX?为什么a.com页面不直接将表单提交给b.com,然后他们就会登录到那里。但我认为这应该可以。试试看。@Barmar否。在第2步中,会话cookie仍将存储在
    a.com
    @RandyCasburn的cookie存储中,我不这么认为。您不能在其他域中设置Cookie。您需要在
    XMLHttpRequest
    中设置
    withCredentials
    选项,才能使用Cookie。看见