2012-01-20 42 views
3

我對使用部分域名cookie的近期問題感到困惑。我在我的應用中使用部分域名cookie來管理單一登錄場景。一切工作正常,直到我碰巧嘗試使用Google App Engine域名appspot.com使用appspot.com作爲部分域名cookie

盡我所能,我無法讓瀏覽器接受appspot.com作爲部分域cookie。下面是HTTP響應頭我送:

foo=bar;Path=/;Domain=.appspot.com 

如果我的應用程序是在http://my.appspot.com瀏覽器忽略設置的cookie。我可以在其他域(例如google.com)上做到這一點,一切都很好(我正在使用我的hosts文件將瀏覽器導向到我的mac)。當我在本地,App Engine或其他地方運行它時,它會失敗。

我想不出任何理由這個域名會是特殊的。有沒有人有任何想法?

+0

可能的重複[有什麼方法可以將白名單.appspot.com設置爲可以在Firefox 6的該域上設置cookie?](http://stackoverflow.com/questions/7110681/is-there-any-路到白名單,Appspot上-com-so-i-can-set-a-cookie-on-that-domain) –

+0

如果可能的話,這將是一個巨大的安全/隱私問題。 –

回答

4

我相信this可能會回答你的問題。

報價:

我測試。一個子域的頁面不可能爲父域創建一個 cookie。因此這個問題不存在。

可能有所幫助的進一步說明;根據this谷歌論壇主題:

看來,我不能設置一個Cookie使用域= .appspot.com的

當我這樣做,它不會在Cookie中的列表中顯示出來。我可以在.appspot.com(domain = foo.appspot.com)的子域中設置 Cookie,但不在appspot.com本身上設置 。

和Jon麥卡里斯特的答覆:

這是因爲appspot.com加入 域的公共後綴列表,現代的瀏覽器不應該允許Cookie進行設置: 看到 here

+0

Bang。你明白了Jon。我驗證了公共後綴列表中其他域的相同問題。謝謝!!! – velohomme