首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用重定向设置跨域Cookie?

如何使用重定向设置跨域Cookie?
EN

Stack Overflow用户
提问于 2012-06-14 11:04:35
回答 1查看 4.5K关注 0票数 1

所有人

我有两个网站www.web1.com和www.web2.com。现在,我想用web1编写一个cookie,并通过Response.Redirect将其写入web2。如果它可以工作,我想通过这种方法实现一个简单的sso。但是,我无法读取web2中的cookie。有没有人可以帮我查出我的代码有没有问题,或者cookie不能通过这种方式跨域共享。谢谢:)

代码如下:

在www.web1.com/Default.aspx

代码语言:javascript
复制
protected void Page_Load(object sender, EventArgs e)
{
    HttpCookie ck = new HttpCookie("userid", "00000001");

    ck.Expires = DateTime.Now.AddDays(1);

    ck.Domain = ".web2.com";

    Response.Cookies.Add(ck);

    Response.Redirect("http://www.web2.com/Default.aspx");
}

和www.web2.com/Default.aspx中的代码

代码语言:javascript
复制
protected void Page_Load(object sender, EventArgs e)
{
    if (Request.Cookies["userid"] != null)
    {
        lbCookie.Text = Request.Cookies["userid"].Value;
    }
    else
    {
        lbCookie.Text = "No Cookies";
    }
}
EN

回答 1

Stack Overflow用户

发布于 2014-05-09 16:17:15

不要费心设置跨域cookie,它们在大多数情况下都会在所有现代浏览器中被阻止。

使用带参数的纯HTTP GET和服务器端加密来进行跨域SSO。

例如,在页面www.web1.com/Default.aspx上,您可以将隐藏的IFrame添加到一些特殊的页面www.web2.com/sso.aspx?userid=<encrypted,timestamped userid>,这反过来会将cookie设置在web2.com上。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11026115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档