我使用這個 \ a class =「fb-button」href =「https://www.facebook.com/dialog/oauth?client_id=184082381694xx8 & redirect_uri = https://xxxxxxx.com & display = popup「\ 儘管它似乎改變了oauth顯示的方式,但它不會打開爲彈出窗口,而是作爲新選項卡打開 。 我該如何做一個像這樣的彈出式Facebook登錄https://www.airbnb.com/login?Facebook oauth顯示彈出框
0
A
回答
3
您需要包含Facebook JS SDK才能使這些彈出窗口正常工作。有關how to include the SDK的說明,請參閱開發人員文檔。
2
我有同樣的問題,我沒有包括avist建議的JavaScript SDK。這裏是我的經驗/研究的結論:
- 我無法讓display = popup來工作,這並不令人驚訝,因爲facebook文檔中的許多內容似乎並不工作。
- Airbnb(在Sergi鏈接的示例中)實現了自己的彈出窗口。在這裏有一個很好的例子來說明http://thinkdiff.net/facebook/create-facebook-popup-authentication-window-using-php-and-javascript/。簡而言之,您只需在使用javascript的彈出窗口中打開鏈接,然後在用戶接受權限並確保父窗口重定向時關閉該窗口。
我最終使用了JavaScript API中的FB.signup,使用起來更簡單。唯一不利的一面是你得到一個短命令(2小時)並反對壽命期滿的令牌(60天)。但你可以隨時換一次短命 - https://developers.facebook.com/roadmap/offline-access-removal/#extend_token