Javascript 如何使用FB.login()获取facebook的用户信息
在我的代码中,我使用FB.login函数登录用户。使用下面的响应变量,我只能访问用户ID。是否可以检索用户名和电子邮件? 这是我的代码:Javascript 如何使用FB.login()获取facebook的用户信息,javascript,jquery,facebook,facebook-javascript-sdk,Javascript,Jquery,Facebook,Facebook Javascript Sdk,在我的代码中,我使用FB.login函数登录用户。使用下面的响应变量,我只能访问用户ID。是否可以检索用户名和电子邮件? 这是我的代码: <script> window.fbAsyncInit = function () { FB.init({ appId: '531991481003168', cookie: true, xfbml: true, version:
<script>
window.fbAsyncInit = function () {
FB.init({
appId: '531991481003168',
cookie: true,
xfbml: true,
version: 'v5.0'
});
FB.AppEvents.logPageView();
};
(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 = "https://connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<script async defer src="https://connect.facebook.net/en_US/sdk.js"></script>
<script type="text/javascript">
function statusChangeCallback(response) {
if (response.status !== "connected") {
FB.login(function (response) {
console.log(response);
});
}
}
$(document).ready(function () {
$("#btn-facebook").on("click", function() {
FB.getLoginStatus(function (response) {
statusChangeCallback(response);
});
});
});
</script>
Facebook的文档真的很混乱,我找不到这么简单的东西。登录后,使用获取其他数据:
FB.api('/me', {fields: 'name,email'}, (response) => {
document.getElementById('response').innerHTML = 'Hello ' + response.name;
});
示例:这很有帮助,谢谢,但现在我无法访问电子邮件数据,因为它不会出现在响应中。您没有授予任何其他权限。查看示例,您必须正确设置FB.login函数,并具有所需的权限。