2012-02-02 128 views
-1

是否有可能在C#中读取跨域cookie?如果可能的话我怎么能读取cookie, 饼干在一个域中设置像“DEV-001”,而在另一个领域“本地主机”得到一个cookie是否可以读取跨域cookie?

我用

Request.Cookies["userInfo"].Values 

它显示了一个空值。

是否有任何可能性,因为这是我们的要求。所有的信息都可以在cookie中找到。但我看不懂

+2

这将是一个hish安全漏洞,如饼干大多数Web站点的商店认证数据。你能解释你在更高层面上想做什么吗? – 2012-02-02 09:11:26

+0

在此阅读此概念:http://en.wikipedia.org/wiki/Same_origin_policy – Candide 2012-02-02 09:13:05

+0

[cross domain cookies]可能重复(http://stackoverflow.com/questions/1084114/cross-domain-cookies) – 2012-02-02 09:14:06

回答

5

不,这是不可能的。 Cookie不能跨域共享。这将是一个巨大的安全缺陷。

+0

我已经在用户机器上丢弃了一个cookie,并且用户wcf serive从我通过其中删除cookie的网站检索了信息,但是我无法在我的wcf服务中读取该丢弃的cookie,请帮助 – 2012-12-23 08:15:35

0

但是,如果将域设置为“.your_domain.com”,则可以允许所有子域都有权访问。 一个奇怪的解决方案是将您的用户重定向到一个域以获取cookie内容,就像web服务类的东西一样,但我根本不会推荐!

如果您确实需要在多个平台上存储有关您的用户的数据,为何不将数据存储在数据库中?

0

无法从其他域中读取cookie。如果可以的话,虽然会有严重的安全隐患,但实际的原因是浏览器在发出请求时从未从其他域发送cookie。所以信息不可用。

+0

我已经在用户机器上丢弃了一个cookie,和用户wcf serive从网站检索信息,通过它我已经放弃了cookie,但我无法在我的wcf服务中读取丢弃的cookie,请帮助 – 2012-12-23 08:17:10

0

从您的简要说明中,您需要找到更好的方法来执行手头的任务。 Cookies不能跨域共享。

但是,可以将第三方引入允许共享数据的组合中(虽然可以通过更复杂的机制),尽管可以禁用第三方Cookie。

Cross-domain user tracking without 3rd party cookies?