首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >跨域协同问题(ASP.NET)

跨域协同问题(ASP.NET)
EN

Stack Overflow用户
提问于 2010-04-26 17:04:41
回答 5查看 10.4K关注 0票数 4

我对跨域曲奇有个问题。我阅读了很多关于在子域之间共享cookie的文档。所有文章的主要思想是将域属性设置为".mydomain.com“。我在本地IIS服务器上创建了两个域-- test1.local.boo和test2.local.boo。在浏览器中,它们工作得很好,可以看到。我有以下代码:

站点test1 -写cookie:

代码语言:javascript
复制
HttpCookie myCookie = new HttpCookie("TestCookie");
myCookie.Domain = ".local.boo";
myCookie["msg"] = "Welcome from Cookie";
Response.Cookies.Add(myCookie);

Site test2 -读取cookie:

代码语言:javascript
复制
HttpCookie cookie = Request.Cookies["TestCookie"];
if (cookie != null)
{
    Response.Write(cookie["msg"]);
}
else
{
    Response.Write("FAILED");
}

此代码总是显示失败的消息。因此,这意味着第二个站点不能从同一个子域读取cookie。我的错误在哪里??

EN

回答 5

Stack Overflow用户

发布于 2010-04-26 17:16:56

您可以使用web调试器(如费德勒 )检查浏览器是否返回cookie标头。

它将显示为每个请求和响应发送的头和cookie,这样您就可以看到是否设置了正确的域,以及请求到第二个域发生了什么。

票数 1
EN

Stack Overflow用户

发布于 2010-04-27 15:16:45

Hmm...The问题是在browser...Opera浏览器中没有将cookie发送到同一子域中的其他站点。Firefox和IE工作得很好。不管怎样,谢谢你们!

注意:如果您想要从其他子域中删除这样的cookie,那么您需要将域属性设置为:.mydomain.com --我已经花了很多时间试图找出它。希望这对某人有帮助

票数 1
EN

Stack Overflow用户

发布于 2010-10-21 22:49:50

在IIS 7中

将此添加到web.config中

代码语言:javascript
复制
<system.webserver>
    <httpProtocol>
        <customHeaders>
            <add name="p3p" value="CP=&quot;NOI ADM DEV PSAi COM NAV OUR OTR STP IND DEM&quot;" />
        </customHeaders>
    </httpProtocol>
</system.webServer>

在II6中。

  • 运行inetmgr
  • 展开服务器>网站
  • 您的站点中的右循环
  • 属性
  • HTTP标头
  • 添加...
  • 自定义标头名称:p3p
  • 自定义标头值:CP="NOI ADM DEV PSAi COM NAV OTR STP IND DEM"
  • 好的
  • 好的
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2715320

复制
相关文章

相似问题

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