全部, 我正在使用facebook提供的代码,但这是我正在使用的代码:
<?php
define('123', '123');
//uses the PHP SDK. Download from https://github.com/facebook/php-sdk
require 'facebook.php';
$facebook = new Facebook(array(
'appId' => '123',
'secret' => '12344556',
));
$userId = $facebook->getUser();
?>
<html>
<body>
<?php if ($userId) {
//$userInfo = $facebook->api('/' + $userId);
$userInfo = $facebook->api('/me');
print_r($userInfo);
?>
Your email address is: <?= $userInfo['email'] ?>
<?php } else { ?>
<div id="fb-root"></div>
<fb:login-button></fb:login-button>
<?php } ?>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '<?= 123?>',
status : true,
cookie : true,
xfbml : true,
oauth : true,
});
FB.Event.subscribe('auth.login', function(response) {
window.location.reload();
});
};
(function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));
</script>
</body>
</html>
如果我在登录时需要某人的电子邮件地址,我想添加该数据范围变量,如果这是他们第一次登录,则会提示他们给我这个权限。我在哪里将其添加到上面的代码中?我必须把它放在登录按钮中吗?
请帮忙!
谢谢!
答案 0 :(得分:7)
每http://developers.facebook.com/docs/reference/plugins/login/
使用scope
属性告诉对话框要提示的权限。
<fb:login-button scope="email"></fb:login-button>
答案 1 :(得分:6)
<fb:login-button data-scope='email'></fb:login-button>
这更像是Facebook在https://developers.facebook.com/docs/reference/plugins/login/
上使用的示例答案 2 :(得分:2)
您必须设置范围属性,以控制身份验证过程。
<fb:login-button scope='email'></fb:login-button>
有关范围的更多信息:
https://developers.facebook.com/docs/reference/api/permissions/