2012-03-15 85 views
5

我建立一個網絡應用程序,可以在iPhone上打開全屏和我以下爲Facebook移動網絡代碼,它可以在這裏找到:https://developers.facebook.com/docs/guides/mobile/web/黑屏與移動Web App和Facebook連接

當我嘗試使用Facebook登錄頁面進行登錄,點擊「登錄」按鈕後,我會看到一個空白的白色屏幕。用戶IS登錄雖然..我知道這一點,因爲如果我關閉並重新打開Web應用程序,我檢查登錄狀態,並嘗試獲取一些用戶信息,並且它工作正常。

我看到別人在這裏一樣的:blank white screen after FB login via web app?

似乎有人已經確定瞭解決辦法,但我不能得到它的工作。我使用的代碼是:

function loginUser() {  
    FB.login(function(response) { }, {scope:'email'});  
    } 

也有人指出,我需要在這裏使用的解決方法:

login({scope:'email', redirect_uri:'where_to_go_when_login_ends'}) 

有誰知道如何合併這些作品的代碼來得到它的工作?

謝謝!

+0

如果您使用手機上的Facebook應用進行登錄,請嘗試完全關閉它,然後再試一次,有時候我會看到它感到困惑。 – peterept 2012-03-15 09:23:06

+0

感謝您的回覆peterept,雖然這似乎不是問題。不太確定會發生什麼。 – Brandon 2012-03-17 12:16:19

回答

0

嘗試this,它的工作對我來說:

FB.login(function(response) { 
    //deal with response 
}, {scope:'permissions', redirect_uri:'url to redirect to'}); 
+1

我相信這個未記錄的功能可能已被Facebook刪除。我正在使用這種解決方法,它最近停止了爲我工作,留給我空白的白色屏幕。這種替代方法似乎在使用iOS5的iPad1上工作:http://stackoverflow.com/questions/11197668/fb-login-broken-flow-for-ios-webapp – Mike 2012-12-12 18:23:40

1

的問題在於,在登錄窗口通常會打開一個彈出窗口的事實。但是,在(iOS)網絡應用程序中,由於某種原因,它不被正確支持。

通過提供一個正常的鏈接,而不是FB自己的登錄腳本BTN,在登錄過程中保持在同一窗口(包括重定向過程!)

我希望這可以幫助任何人......

<a href="https://www.facebook.com/dialog/oauth/?client_id=YOUR_APP_ID&redirect_uri=YOUR_REDIRECT_URL&state=YOUR_STATE_VALUE&scope=COMMA_SEPARATED_LIST_OF_PERMISSION_NAMES">LOGIN!</a>