2013-12-11 155 views
6

我知道這已被問了幾次,但在所有的答案,我發現有人問,如果它仍然會工作,其他人說它沒有,所以我是想知道是否有解決這個問題,仍然適用於最新版本的鉻:谷歌Chrome瀏覽器跨域cookie問題

可以說我們有一個嵌入了iframe的網站,iframe源是來自另一個主機。 iframe中的頁面需要使用Cookie,但Google Chrome似乎拒絕設置在iframe中設置的cookie。 (這種情況只發生在檢查「阻止第三方cookie」時,因爲我有多個不接觸高級選項的用戶提供的多份報告,所以這似乎是獨立發生的)

我控制了這兩個站點,儘管我只能修改包含iframe的頁面上的html,沒有服務器端的東西。

事情到目前爲止,我已經試過,沒有工作: 來自同一主機的iframe的源 Emedding圖像進行POST請求的iframe 建立P3P頭

我也可以發使用xdm的消息,但我不知道這是否有幫助。

如果有人有任何進一步的想法,它將大大apreciated!我覺得必須有解決這個問題的地方

+0

是的。這是一個婊子。我全部都是阻止第三方Cookie,但這也意味着PHP會話cookie(以及P3P廢話不適用於Chrome(這很好!))。需要在JS中保存php-session-cookie-id並在隨後的$ _GET/POSTs中執行。爲什麼哦爲什麼我不選擇戶外工作... – T4NK3R

回答

1

在iFrame內設置cookie可能會很麻煩。但是,iFrame可以訪問設置在iFrame外部的cookie。您可以在彈出窗口中顯示頁面,該窗口設置必要的cookie(如身份驗證等),然後從iFrame中訪問這些cookie。

如果您想在其他域上驗證用戶,這非常有用。只需顯示一個彈出窗口,驗證並設置cookie,然後從iFrame訪問您網站上的這些cookie。