Ich arbeite an einer Website in PHP, wo ich eine Facebook Connect API integriert habe, die den Facebook-Login-Button aktiviert hat.Facebook connect API: Benutzer-E-Mail abrufen
Mein Code Benutzerdaten zu erhalten wie folgt aussieht:
<?php
session_start();
// added in v4.0.0
require_once 'autoload.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;
use Facebook\GraphUser;
use Facebook\Entities\AccessToken;
use Facebook\HttpClients\FacebookCurlHttpClient;
use Facebook\HttpClients\FacebookHttpable;
// init app with app id and secret
$appID = 'app id';
$appSecret = 'app secret code';
FacebookSession::setDefaultApplication($appID, $appSecret);
// login helper with redirect_uri
$helper = new FacebookRedirectLoginHelper('http://localhost/test/facebook_new/fbconfig.php');
try {
$session = $helper->getSessionFromRedirect();
} catch(FacebookRequestException $ex) {
// When Facebook returns an error
} catch(Exception $ex) {
// When validation fails or other local issues
}
// see if we have a session
if (isset($session)) {
// graph api request for user data
$request = new FacebookRequest($session, 'GET', '/me');
$response = $request->execute();
// get response
$profile = $response->getGraphObject('Facebook\GraphUser');
var_dump($profile);
} else {
$loginUrl = $helper->getLoginUrl();
header("Location: ".$loginUrl);
}
?>
Nach diesem Code eecuting, var_dump($profile)
zeigt nur die User Facebook ID
und seine Full Name
wie die unten im Bild angezeigt wird:
Was ich bekommen möchte, ist die E-Mail. Die E-Mail kann über 'Facebook\GraphUser'
zugegriffen werden, aber ich weiß wirklich nicht, was mit meinem Code falsch ist.
Bitte helfen Sie mir dieses Problem