2013-07-23 67 views
6

登錄時遇到問題即使向用戶添加電子郵件時也無法收到電子郵件&朋友權限(對於某些Facebook帳戶)。登錄時未從Facebook API獲取電子郵件

我使用Facebook的PHP-SDK,這,即時通訊使用

$facebook_user_profile = $facebook->api('/me', array('fields' => 'id,email,first_name,last_name,picture'));

請任何一個可以救我一天的代碼?

+2

您在應用程序儀表板中設置的權限僅適用於從應用程序中心直接訪問。如果你自己登錄,你必須使用'scope'參數來請求權限。 https://developers.facebook.com/docs/reference/php/facebook-getLoginUrl/ – CBroe

+0

thx爲我現在使用'Facebook :: getLoginUrl'的鏈接並要求提供範圍的電子郵件許可。 –

回答

9

除了CBroe在登錄時要求使用「scope」參數請求權限permissions時,還必須考慮到並非每個登錄用戶(或允許應用程序訪問其信息的用戶)有一個電子郵件分配給他們的帳戶。

人們可以使用他們的手機號碼驗證他們的Facebook帳戶,因此沒有電子郵件存在的可能性。因此,在開發應用程序時,請注意用戶是否沒有電子郵件,那麼您應該在登錄後通過表單手動詢問它(如果電子郵件是用戶使用您的應用程序所必需的)。

希望此信息有幫助!

+1

其實是的,我正在開發的應用程序需要發送電子郵件,但我應該考慮你對不允許訪問他們的信息的用戶的澄清,或者用戶沒有電子郵件。 –

+0

很高興我能夠幫助 – Amjo

+0

@Amjo我遵循http://www.krizna.com/general/login-with-facebook-using-php/。你能否告訴我下載源代碼後應該在哪裏包含FB.login()函數? – partho

0

當您使用電子郵件地址創建Facebook帳戶並且未確認Facebook使用的電子郵件時,就會出現該問題。只要您通過電子郵件批准,Facebook登錄將返回電子郵件地址。

希望這可以解決這個問題。

相關問題