这确实是一个新手问题,但我已经挣扎了几个小时,所以欢迎任何帮助。
我尝试在用户身份验证后获取Facebook用户数据。基本上我只想要名称和个人资料图片,但我似乎无法找到获取这些数据的方法。
在我的身体标签之后,我有以下代码:
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '270033680024381',
xfbml : true,
version : 'v2.6'
});
};
(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
function login() {
FB.login(function(response) {
if (response.status === 'connected') {
document.getElementById('status').innerHTML = '<p>Autenticação realizada com sucesso!</p> <br> <br> <p> Escreva sua proposta abaixo.</p> ';
document.getElementById('login').style.visibility = 'hidden';
} else if (response.status === 'not_authorized') {
document.getElementById('status').innerHTML = '<p> Você não está autenticado. Por favor, faça o login.</p> <div onclick="login()"> Logar </div>'
} else {
document.getElementById('status').innerHTML = '<p> Você não está autenticado. Por favor, faça o login.</p> <div onclick="login()"> Logar </div>';
}
}, {scope: 'publish_actions'});
}
FB.api('/me', {fields: 'last_name'}, function(response) {
console.log(response);
});
</script>
身份验证功能非常有效。但问题是我何时获取用户数据。我不知道该怎么做,我在Facebook Developers页面上看到了代码:
FB.api('/me', {fields: 'last_name'}, function(response) {
console.log(response);
});
但是当我进入控制台日志时,它说FB未定义。我也找不到在我的页面上打印这些数据的方法。我想要做的是将名称和配置文件图片值传递给表单。有人可以帮我吗?