2011-11-16 120 views
2

在將https頁面加載到我的Facebook應用程序(當應用程序以http://apps.facebook.com/xxxxx運行時)時出現了這個奇怪的問題。https頁面在Facebook應用程序/ iframe

如果我確實聲明瞭它的http或https使用。

FB._https = (window.location.protocol === 'https:'); 

在我的https頁面上,facebook javascript api無法靜默或至少失敗setSize函數。將http頁面加載到iframe時,它工作正常。

如果我不聲明它的https是否在IE中收到安全警告,那麼在所有其他瀏覽器中,它都會處理罰款。

如果我將我的設置設置爲以https運行應用程序,並且我的所有頁面都在https中,那麼它工作正常。

但事情是,如果用戶在http上運行Facebook,那麼我必須能夠在iframe中顯示一些頁面作爲https,任何人都有類似的問題?

回答

0

如果有人在http上使用Facebook,並且他們訪問爲https設置的應用程序,他們將只會看到https頁面。或者你可以設置一個http畫布頁面以及你的https畫布頁面。你不需要投入任何這些解決方法..

+0

歡呼的回覆。但不幸的是,這不是問題。我確實有一個http和一個https canvass頁面。問題是,如果有人在occation上使用http畫布頁,那麼當它失敗時需要加載一個https頁面(進入http畫布)。 – Glenn

+0

只需在http畫布頁面設置中輸入一個https url,然後 – Abby

+0

也試過了,看起來問題是當window.top.location和cnavas協議之間的協議不匹配時。 – Glenn

相關問題