【问题标题】:Cross domain cookie accessing跨域cookie访问
【发布时间】:2014-09-28 22:17:33
【问题描述】:

我们如何访问另一个域中的一个域创建的 cookie。

我在一个域中创建了如下 cookie

Response.Cookies["newOne"].Value = "something";

我从另一个域访问它

var data = Request.Cookies["newOne"].Value; //This is throwing exception

我可以从本地访问 cookie,但不能从其他域访问。

【问题讨论】:

标签: asp.net asp.net-mvc-4 c#-4.0 cookies


【解决方案1】:

如图所示提供您的 cookie 域名:-

   Response.Cookies["newOne"].Value = "something";
   Response.Cookies["newOne"].Domain = ".mydomain.com"

然后在其他域中访问它的值。

【讨论】:

    【解决方案2】:

    HttpCookie hcookie = new HttpCookie("cookiename","Cookie 值"); hcookie.Domain = ".example.com";

    请试试这个链接 http://msdn.microsoft.com/en-us/library/dd920298(v=vs.95).aspx

    【讨论】:

      【解决方案3】:

      这个问题很冷,但万一其他人绊倒它,或者 OP 仍然需要,我创建了一个 NPM 模块,它允许您跨域共享本地存储的数据:

      通过使用托管在域 A 上的 iframe,您可以将所有用户数据存储在域 A 上,并通过向域 A iframe 发布请求来引用该数据。

      因此,域 B、C 等可以注入 iframe 并向其发布请求以存储和访问所需的数据。域 A 成为所有共享数据的中心。

      通过域 A 内的域白名单,您可以确保只有您的依赖站点才能访问域 A 上的数据。

      诀窍是将代码放在域 A 上的 iframe 内,该代码能够识别正在请求的数据。上述 NPM 模块中的 README 更深入地介绍了该过程。

      希望这会有所帮助!

      【讨论】:

        猜你喜欢
        • 2010-10-30
        • 1970-01-01
        • 2011-02-25
        • 1970-01-01
        • 2011-02-12
        • 2011-03-21
        相关资源
        最近更新 更多