簡體   English   中英

電子郵件不在Facebook php SDK中

[英]email is not coming in facebook php sdk

這是facebook php sdk中的登錄系統,發生什么事,它要求基本權限,然后當用戶通過其facebook帳戶允許時,它將存儲其facebook id和電子郵件,然后通過會話在索引中顯示此fbid和電子郵件,但它不起作用正確,盡管fbid來了,但沒有收到電子郵件,但它顯示為空白

 <?php
 session_start();
 require_once("autoload.php"); 
 require_once('Facebook/FacebookSession.php');
 require_once('Facebook/FacebookRedirectLoginHelper.php');
 require_once('Facebook/FacebookRequest.php');
 require_once('Facebook/FacebookResponse.php');
 require_once('Facebook/FacebookSDKException.php');
 require_once('Facebook/FacebookRequestException.php');
 require_once('Facebook/FacebookAuthorizationException.php');
 require_once('Facebook/GraphObject.php');
 require_once('Facebook/GraphUser.php');
 require_once('Facebook/GraphSessionInfo.php');
 require_once( 'Facebook/HttpClients/FacebookHttpable.php' );
 require_once( 'Facebook/HttpClients/FacebookCurl.php' );
 require_once( 'Facebook/HttpClients/FacebookCurlHttpClient.php' );
 require_once( 'Facebook/Entities/AccessToken.php' );
 require_once( 'Facebook/Entities/SignedRequest.php' );    
 use Facebook\FacebookSession; use Facebook\FacebookRedirectLoginHelper;
 use Facebook\FacebookRequest; use Facebook\FacebookResponse;
 use Facebook\FacebookSDKException; use Facebook\FacebookRequestException;
 use Facebook\FacebookAuthorizationException; use Facebook\GraphObject;
 // init app with app id and secret
 FacebookSession::setDefaultApplication(     '     332325566667346','30adsfsdf7sdf87df6s7df87sdf76dsfd16' );
 // login helper with redirect_uri
 $helper = new           FacebookRedirectLoginHelper('http://localhost/bb/fbconfig.php'     );
 try {
   $session = $helper->getSessionFromRedirect();
 } catch( FacebookRequestException $ex ) {
   // When Facebook returns an error
 } catch( Exception $ex ) {
 }
 // see if we have a session
 if ( isset( $session ) ) {
   $request = new FacebookRequest( $session, 'GET', '/me' );
   $response = $request->execute();
   $graphObject = $response->getGraphObject();
     $email = $graphObject->getProperty('email');          
   echo $email;
 } else {
   $loginUrl = $helper->getLoginUrl();
  header("Location: ".$loginUrl);
 }
 ?>

您不需要在登錄過程中要求電子郵件許可:

$loginUrl = $facebook->getLoginUrl(array('scope' => 'email'));

來源: https : //developers.facebook.com/docs/reference/php/facebook-getLoginUrl

旁注:使用自動加載器或不計其數的require語句,而不要同時使用兩個;)(不過,自動加載器是明智的選擇)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM