我在第三方網站上有一個iframe。 iframe內部是我的應用程序,用戶使用FB Connect進行身份驗證。我在我的Ruby on Rails站點上使用omniauth gem來處理與Facebook的連接。是否可以在第三方網站的iframe中使用FB Connect?
它可以無縫工作,如果a)您已經登錄到FB,並且b)您已經授權我的網站使用您的詳細信息。
如果其中任何一個丟失 - 在FB連接呼叫到Facebook的那一刻 - 一切都會停止,並且我會看到FB徽標和點擊鏈接到Facebook。當我點擊鏈接時 - 它將我帶出我的iframe並進入Facebook。顯然,一旦我返回 - 沒有iframe可以返回,我不再在第三方網站上 - 但是我的。
該技術是否可行?如果是這樣 - 我可能會在哪裏出錯?正如我所說 - 如果a)和b)得到滿足 - 它可以無縫工作。
哦,不 - 太遺憾了。我曾在某些網站上看到使用彈出式窗口。這會起作用嗎?因此,在iframe中,我在主窗口上打開一個彈出窗口 - 執行facebook連接過程,然後關閉彈出窗口。我不認爲會有辦法通知我的網站在iframe中認證已完成。所以 - 不知道這在技術上是否可行 - iframe中的我的站點可以輪詢經過驗證的cookie以「到達」? – Joerg
這將是一個相當奇怪的流程,但理論上可以打開一個加載Facebook身份驗證頁面的新窗口,然後將重定向回到您網域中的頁面。然後該頁面可以輸出一些使用window.opener與iframe進行通信的javascript。但是,做一個頂級重定向然後在完成時跳回框架不是更容易嗎? –
我發現它:它看起來像http://svpply.com/login正在做類似的事情。因此,如果我將該網址添加到iframe中,它就會按照我希望的方式工作。我只是不確定他們是如何實施它的。我可以看到有服務器端和客戶端連接的方式。登錄後,他們創建一個用戶名 - 所以它看起來也有一些服務器端的實現。但是,是的 - 我只是不知道他們採取了哪些不同的步驟。 – Joerg