2012-02-02 68 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?