我生成了一個登錄URL,這很好用,但在我的情況下,電子郵件許可權是強制性的,所以我需要向用戶解釋並重新詢問電子郵件許可權。重新詢問Facebook權限PHP SDK 5.0
這裏是我是如何生成的網址:
$fb = new Facebook\Facebook([
'app_id' => fbappid,
'app_secret' => fbappsecret,
'default_graph_version' => 'v2.2',
]);
$helper = $fb->getRedirectLoginHelper();
$permissions = ['email', 'user_birthday', 'user_location', 'user_hometown', 'user_relationships']; // Optional permissions
$loginUrl = $helper->getLoginUrl('http://localhost/urbanportal/wifilogin.php?origlink='.$_SESSION['origlink'].'&routerlink='.$_SESSION['routerlink'].'&siteid='.$_SESSION['siteid'], $permissions);
我讀了你可以通過說你正在做一個重新請求像這樣第三個參數:$loginUrl = $helper->getLoginUrl('http://localhost/urbanportal/wifilogin.php?origlink='.$_SESSION['origlink'].'&routerlink='.$_SESSION['routerlink'].'&siteid='.$_SESSION['siteid'], $permissions, true);
但我m得到「param app_id的長度必須小於或等於32」 Facebook錯誤,也許是SDK 4.0的錯誤?
的文件似乎總是導航我:
FB.login(
function(response) {
console.log(response);
},
{
scope: 'user_likes',
auth_type: 'rerequest'
}
);
但對於Javascript SDK ...
工作,謝謝:)。不知道爲什麼他們不能在文檔中提及...!我正在使用'filter_var($ fbemail,FILTER_VALIDATE_EMAIL)'來檢查我收到的電子郵件是否是有效的電子郵件,因此沒關係。 –