2012-05-27 55 views
2

對不起,我無法提供很多信息,因爲我完全不知道這個奇怪的問題。Safari無法獲取HEROKU的餅乾

我有一個由rails 3.2.2寫的fb canvas應用程序。

我的本地計算機(Mac OS X 10.7.4)沒有任何問題。

當我將它部署到heroku時,使用chrome和firefox可以。但是,當我使用Safari瀏覽它時,Safari無法從heroku獲取任何cookie。 (顯示「這個網站有沒有夾心餅乾」中的開發者工具,但它運作良好,我的本地機器上。)

我用Google搜索這個問題,我也得到類似thisthis,但我不認爲這些是我的情況。

有什麼建議嗎?

如果您需要關於我的代碼的任何特定信息來解決此問題,請告訴我。

我會非常感激!

+0

同樣的問題在這裏:( –

回答

3

我終於發現這是safari安全設置的問題。

由於fb canvas通過iframe獲取了heroku的內容,因此可能存在安全問題。如果我們從「第三方和廣告客戶」(默認)向「從不」提供Safari瀏覽器隱私設置的「阻止Cookie」,則一切正常! setting example

但是,我不認爲要求用戶降級他們的安全設置是個好主意。我想知道是否有解決方案來避免Safari瀏覽器的這一限制。

如果您有任何想法,請讓我知道。非常感謝:)

+0

感謝布賴恩,我有同樣的問題,你確定了我現在...解決方案?我也把一個heroku應用程序在facebook畫布。就像我在這裏想念的東西一樣,必須有成千上萬的人使用Facebook - > heroku,爲什麼只是我們兩個?我根據文檔推出了自己的最小認證,是嗎?也許devise等人已經解決了這個問題。 –

+0

我還沒有理想的解決方案,我放棄了與safari兼容,正如我在問題中提到的那樣,這個問題在Chrome和Firefox中不存在,並且我使用了gem來避免在IE中使用此限制(https: //github.com/grosser/ie_iframe_cookies)我認爲我的fb應用程序可以爲大多數用戶提供兼容這3種瀏覽器的功能 但是,我仍然想知道是否有一個好的解決方案。 – Brian