我們正在將應用程序作爲一個Facebook應用程序在工作中進行集成。我希望能夠檢測用戶是否已登錄Facebook,如果沒有,則提示進行身份驗證。是否可以在沒有彈出窗口的情況下實現Facebook身份驗證
到目前爲止,我們已經成功地使用了facebook SDK和它提供的登錄功能。但是,這會導致身份驗證彈出窗口由我們的應用程序創建,並且它被大多數瀏覽器阻止,所以我們的優先任務是重新實現身份驗證邏輯,以便不使用彈出窗口。
根據Facebook文檔中的this教程,可以通過使用用戶狀態更改請求的事件訂閱(用戶註銷時不起作用)或通過獲取訪問令牌來完成。問題在於令牌作爲請求參數返回到頂部窗口(我在用戶驗證後指定爲返回URL)。由於存在一些跨域和瀏覽器限制,我無法使用客戶端腳本來獲取該值,並且我被卡住了。
這裏的相關問題已被問及常見問題是大多數應用程序正在運行在localhost
。然而,我們的應用程序的情況是,我們已將應用程序部署到本地Web服務器,該服務器由公共域公開,但仍存在跨域限制問題。它在facebook應用配置中被其公有域名引用。我完全相信這些域可以從外部完全訪問。
一般來說,我們的情況是,我們希望在facebook用戶正在使用應用程序時託管應用程序。也許這種方法可能不符合我們的要求?是否可以配置跨域通信以避免此問題?是否有其他方法可以避免Facebook登錄彈出窗口?
事實上,服務器端是我們要求的正確方法 - 謝謝 – 2012-07-27 08:37:34